ThinkPHP3.0完全开发手册
除了常规变量的输出外,模板引擎还支持系统变量和系统常量、以及系统特殊变量的输出。它们的输出不需要事先赋值给某个模板变量。系统变量的输出必须以$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} |
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变量
2、系统常量:使用$Think.const 输出
{$Think.const.__SELF__ }
{$Think.const.MODULE_NAME }
或者直接使用
{$Think.__SELF__ }
{$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')的返回结果是一样的。