ThinkPHP3.0完全开发手册
ThinkPHP没有改变原生的PHP系统变量获取方式,所以依然可以通过$_GET、 $_POST、$_SERVER、$_REQUEST 等方式来获取系统变量,不过系统的Action类提供了对系统变量的增强获取方法,包括对GET、POST、PUT、REQUEST、SESSION、COOKIE、SERVER和GLOBALS参数,除了获取变量值外,还提供变量过滤和默认值支持,用法很简单,只需要在Action中调用下面方法:
$this->方法名("变量名",["过滤方法"],["默认值"])
方法名可以支持:
方法名 |
含义 |
_get |
获取GET参数 |
_post |
获取POST参数 |
_request |
获取REQUEST 参数 |
_put |
获取PUT 参数 |
_session |
获取 $_SESSION 参数 |
_cookie |
获取 $_COOKIE 参数 |
_server |
获取 $_SERVER 参数 |
_globals |
获取 $GLOBALS参数 |
变量名(必须)是要获取的系统变量的名称
过滤方法(可选)可以用任何的内置函数或者自定义函数名,如果没有指定的话,采用默认的htmlspecialchars函数进行安全过滤(由DEFAULT_FILTER 参数配置),参数就是前面方法名获取到的值,也就是说如果调用:
$this->_get("name");
最终调用的结果就是 htmlspecialchars($_GET["name"]),如果要改变过滤方法,可以使用:
$this->_get("name","strip_tags");
默认值(可选)是要获取的参数变量不存在的情况下设置的默认值,例如:
$this->_get("id","strip_tags",0);
如果$_GET["id"] 不存在的话,会返回0。
其他方法的用法类似。