输入变量

可以通过 Request 对象输入变量的获取和安全过滤,支持 $_GET$_POST$_REQUEST$_SERVER$_SESSION$_COOKIE 等系统变量。


变量获取
方法 描述
get 获取 $_GET 变量
post 获取 $_POST 变量
request 获取 $_REQUEST 变量
param 获取 PARAM 变量
session 获取 $_SESSION 变量
cookie 获取 $_COOKIE 变量
server 获取 $_SERVER 变量

获取 GET 变量
  1. $request = Request::instance();
  2. $request->get('id'); // 获取某个 get 变量
  3. $request->get('name'); // 获取 get 变量
  4. $request->get(); // 获取所有的 get 变量(经过滤)
  5. $request->get(false); // 获取所有的 get 变量(原始)

get 方法说明:

  1. function get( [$name = true [, $type = 'str' [, $default = '']]] )

参数

  • name 变量名

    支持三种类型

    布尔值:true (默认),取得所有被过滤的变量,false,取得所有原始变量

    字符串:取得指定变量

    数组:取得数组指定的变量,如不存在或为空,则自动用空值补全。

  • type 类型

    name 为数组时自动忽略。

    可能的值

    | 值 | 描述 | | - | - | | str(默认值) | 字符串 | | int | 整数 | | float | 浮点数 | | num | 数字 | | arr | 数组 |

  • default 默认值

    name 为数组时自动忽略。

说明:当变量不存在或者类型不符合时,会用默认值填充变量。

  1. $request = Request::instance();
  2. $id = $request->get('id' 'int', 0);

变量名为多维数组时:

  1. $inputParam = array(
  2. // '变量名' => array('类型', '默认值'),
  3. 'admin_id' => array('int', 0),
  4. 'admin_name' => array('txt', ''),
  5. 'admin_pass' => array('txt', ''),
  6. 'admin_note' => array('txt', ''),
  7. 'admin_status' => array('txt', ''),
  8. 'admin_type' => array('txt', ''),
  9. );
  10. $submitInput = $this->obj_request->get($inputParam);

获取 POST 变量
  1. $request = Request::instance();
  2. $request->post('id'); // 获取某个 post 变量
  3. $request->post('name'); // 获取 post 变量
  4. $request->post(); // 获取所有的 post 变量(经过滤)
  5. $request->post(false); // 获取所有的 post 变量(原始)

post 方法的用法与 get 方法相同


获取 REQUEST 变量
  1. $request = Request::instance();
  2. $request->request('id'); // 获取某个 request 变量
  3. $request->request('name'); // 获取 request 变量
  4. $request->request(); // 获取所有的 request 变量(经过滤)
  5. $request->request(false); // 获取所有的 request 变量(原始)

request 方法的用法与 get 方法相同


获取 PARAM 变量

PARAM 变量是框架提供的用于优化 URL 的变量,详情请查看 架构 -> URL 访问 章节

  1. $request = Request::instance();
  2. $request->param('id'); // 获取某个 param 变量
  3. $request->param('name'); // 获取 param 变量
  4. $request->param(); // 获取所有的 param 变量(经过滤)
  5. $request->param(false); // 获取所有的 param 变量(原始)

param 方法的用法与 get 方法相同


获取 SESSION 变量
  1. $request = Request::instance();
  2. $request->session('id'); // 获取某个 session 变量
  3. $request->session('name'); // 获取 session 变量
  4. $request->session(); // 获取所有的 session 变量

  1. $request = Request::instance();
  2. $request->cookie('id'); // 获取某个 cookie 变量
  3. $request->cookie('name'); // 获取 cookie 变量
  4. $request->cookie(); // 获取所有的 cookie 变量

获取 SERVER 变量
  1. $request = Request::instance();
  2. $request->server('id'); // 获取某个 server 变量
  3. $request->server('name'); // 获取 server 变量
  4. $request->server(); // 获取所有的 server 变量