標籤:二維 server 三維 事先 sel lan 擷取 方式 標籤
除了常規變數的輸出外,模板引擎還支援系統變數和系統常量、以及系統特殊變數的輸出。它們的輸出不需要事先賦值給某個模板變數。系統變數的輸出必須以$Think.打頭,並且仍然可以支援使用函數。常用的系統變數輸出包括下面:
用法含義例子
$Think.server擷取$_SERVER{$Think.server.php_self}
$Think.get擷取$_GET{$Think.get.id}
$Think.post擷取$_POST{$Think.post.name}
$Think.request擷取$_REQUEST{$Think.request.user_id}
$Think.cookie擷取$_COOKIE{$Think.cookie.username}
$Think.session擷取$_SESSION{$Think.session.user_id}
$Think.config擷取系統配置參數{$Think.config.app_status}
$Think.lang擷取系統語言變數{$Think.lang.user_type}
$Think.const擷取系統常量{$Think.const.app_name}或{$Think.APP_NAME}
$Think.env擷取環境變數{$Think.env.HOSTNAME}
$Think.version擷取架構版本號碼{$Think.version}
$Think.now擷取目前時間{$Think.now}
$Think.template擷取當前模板{$Think.template}
$Think.ldelim擷取模板左界定符{$Think.ldelim}
$Think.rdelim擷取模板右界定符{$Think.rdelim}
2
1、系統變數:包括server、session、post、get、request、cookie
{$Think.server.script_name} // 輸出$_SERVER變數
{$Think.session.session_id|md5} // 輸出$_SESSION變數
{$Think.get.pageNumber} // 輸出$_GET變數
{$Think.cookie.name} // 輸出$_COOKIE變數
支援輸出$_SERVER、$_ENV、 $_POST、 $_GET、 $_REQUEST、$_SESSION和 $_COOKIE變數。後面的server、cookie、config不區分大小寫,但是變數區分大小寫。例如:
{$Think.server.script_name }和{$Think.SERVER.script_name }等效
SESSION 、COOKIE還支援二維數組的輸出,例如:
{$Think.CONFIG.user.user_name}
{$Think.session.user.user_name}
系統不支援三維以上的數組輸出,請使用下面的方式輸出。
以上方式還可以寫成:
{$_SERVER.script_name} // 輸出$_SERVER變數
{$_SESSION.session_id|md5} // 輸出$_SESSION變數
{$_GET.pageNumber} // 輸出$_GET變數
{$_COOKIE.name} // 輸出$_COOKIE變數
如果配置了session和cookie首碼的話,會自動支援,例如:
設定參數如下:
‘SESSION_PREFIX‘=>‘think‘,
‘COOKIE_PREFIX‘=>‘think_‘,
那麼
{$Think.session.name}會自動解析成 $_SESSION[‘think‘][‘name‘]
{$Think.cookie.name}會自動解析成 $_COOKIE[‘think_name‘]
2、系統常量:使用$Think.const 輸出
{$Think.const./manual/system_var.html}
{$Think.const.MODULE_NAME}
或者直接使用
{$Think./manual/system_var.html}
{$Think.MODULE_NAME}
3、特殊變數:由ThinkPHP系統內部定義的常量
{$Think.version} //版本
{$Think.now} //現在時間
{$Think.template|basename} //模板頁面
{$Think.LDELIM} //模板標籤起始符號
{$Think.RDELIM} //模板標籤結束符號
4、配置參數:輸出項目的配置參數值
{$Think.config.db_charset}
輸出的值和C(‘db_charset‘) 的返回結果是一樣的。
也可以輸出二維的配置參數,例如:
{$Think.config.user.user_name}
5、語言變數:輸出項目的當前語言定義值
{$Think.lang.page_error}
輸出的值和L(‘page_error‘)的返回結果是一樣的。
ThInkPHP中的常量