溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

thinkphp中I方法如何用

發(fā)布時間:2022-02-25 11:03:36 來源:億速云 閱讀:165 作者:iii 欄目:編程語言

今天小編給大家分享一下thinkphp中I方法如何用的相關(guān)知識點,內(nèi)容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。

在thinkphp中,I方法的命名來自于“Input”,用于更加安全和方便的獲取系統(tǒng)輸入變量,語法為“I('變量類型.變量名',['默認值'],['過濾方法'])”;其中變量類型不區(qū)分大小寫,而變量名嚴格區(qū)分大小寫。

本文操作環(huán)境:Windows10系統(tǒng)、ThinkPHP5版、Dell G3電腦。

thinkphp中I方法怎么用

ThinkPHP的I方法是眾多單字母函數(shù)中的新成員,其命名來自于英文Input(輸入),主要用于更加方便和安全的獲取系統(tǒng)輸入變量,可以用于任何地方,用法格式如下:

I('變量類型.變量名',['默認值'],['過濾方法'])變量類型是指請求方式或者輸入類型。

各個變量類型的含義如下:變量類型含義

  • get獲取GET參數(shù)

  • post獲取POST參數(shù)

  • param自動判斷請求類型獲取GET、POST或者PUT參數(shù)

  • request獲取REQUEST 參數(shù)

  • put獲取PUT 參數(shù)

  • session獲取 $_SESSION 參數(shù)

  • cookie獲取 $_COOKIE 參數(shù)

  • server獲取 $_SERVER 參數(shù)

  • globals獲取 $GLOBALS參數(shù)

注意:變量類型不區(qū)分大小寫。

變量名則嚴格區(qū)分大小寫。

默認值和過濾方法均屬于可選參數(shù)。

1.用法:

我們以GET變量類型為例,說明下I方法的使用:

echo I('get.id'); // 相當于 $_GET['id']
echo I('get.name'); // 相當于 $_GET['name']

支持默認值:

echo I('get.id',0); // 如果不存在$_GET['id'] 則返回0
echo I('get.name',''); // 如果不存在$_GET['name'] 則返回空字符串

采用方法過濾:

echo I('get.name','','htmlspecialchars'); // 采用htmlspecialchars方法對$_GET['name'] 進行過濾,如果不存在則返回空字符串

支持直接獲取整個變量類型,例如:

I('get.'); // 獲取整個$_GET 數(shù)組

用同樣的方式,我們可以獲取post或者其他輸入類型的變量,例如:

I('post.name','','htmlspecialchars'); // 采用htmlspecialchars方法對$_POST['name'] 進行過濾,如果不存在則返回空字符串
I('session.user_id',0); // 獲取$_SESSION['user_id'] 如果不存在則默認為0
I('cookie.'); // 獲取整個 $_COOKIE 數(shù)組
I('server.REQUEST_METHOD'); // 獲取 $_SERVER['REQUEST_METHOD']

param變量類型是框架特有的支持自動判斷當前請求類型的變量獲取方式,例如:

echo I('param.id');

如果當前請求類型是GET,那么等效于 $_GET['id'],如果當前請求類型是POST或者PUT,那么相當于獲取 $_POST['id'] 或者 PUT參數(shù)id。

并且param類型變量還可以用數(shù)字索引的方式獲取URL參數(shù)(必須是PATHINFO模式參數(shù)有效,無論是GET還是POST方式都有效),例如:

當前訪問URL地址是

http://serverName/index.php/New/2013/06/01

那么我們可以通過

echo I('param.1'); // 輸出2013
echo I('param.2'); // 輸出06
echo I('param.3'); // 輸出01

事實上,param變量類型的寫法可以簡化為:

I('id'); // 等同于 I('param.id')
I('name'); // 等同于 I('param.name')

以上就是“thinkphp中I方法如何用”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI