1. 程式人生 > >ThinkPHP 3.獲取get post引數與I方法

ThinkPHP 3.獲取get post引數與I方法

傳統方式獲取變數

$id    =  $_GET['id'];            // 獲取get變數
$name  =  $_POST['name'];         // 獲取post變數
$value =  $_SESSION['var'];   // 獲取session變數
$name  =  $_COOKIE['name'];   // 獲取cookie變數
$file  =  $_SERVER['PHP_SELF']; // 獲取server變數

Get示例:

 $year = $_GET["_URL_"][2]; 

I方法

I (‘變數型別.變數名/修飾符’,[‘預設值’],[‘過濾方法’],[‘額外資料來源’])
get 獲取GET引數
post 獲取POST引數
param 自動判斷請求型別獲取GET、POST或者PUT引數
request 獲取REQUEST 引數
put 獲取PUT 引數
session 獲取 $_SESSION 引數
cookie 獲取 $_COOKIE 引數
server 獲取 $_SERVER 引數
globals 獲取 $GLOBALS引數
path 獲取 PATHINFO模式的URL引數(3.2.2新增)
data 獲取 其他型別的引數,需要配合額外資料來源引數(3.2.2新增)

使用示例:

echo I('post.id');          // 相當於 $_POST['id']
echo I('get.name');         // 相當於 $_GET['name']
echo I('param.id');         // get或post,param.可以省略
echo I('path.1');           // 獲取重寫的url變數
I('get.id/d');              // 強制轉換成整數,有以下幾種可選擇:
引數 含義
s 強制轉換為字串型別
d 強制轉換為整形型別
b 強制轉換為布林型別
a 強制轉換為陣列型別
f 強制轉換為浮點型別
I('data.file1','','',$_FILES);         //讀取檔案
I('get.');                  // 獲取整個$_GET 陣列
I('post.name','','htmlspecialchars');   // 採用htmlspecialchars方法對$_POST['name'] 進行過濾,如果不存在則返回空字串。這是預設過濾,可以省略
I('session.user_id',0);     // 獲取$_SESSION['user_id'] 如果不存在則預設為0
I('cookie.');               // 獲取整個 $_COOKIE 陣列
I('server.REQUEST_METHOD'); // 獲取 $_SERVER['REQUEST_METHOD']