1. 程式人生 > >【ThinkPHP學習】取值的方法總結

【ThinkPHP學習】取值的方法總結

RT.

ThinkPHP中主要變數型別:

1.從PHP分配的變數,使用assign分配

2.系統變數

3.路徑替換變數

ThinkPHP通過D方法或者M方法能夠在控制器中建立對應資料表的資料物件,從而對其進行資料操作。

資料操作完成之後,可以通過this->assign()方法將處理後的資料賦予一個變數,將其傳給表現層,供表現層使用。

this-assign()方法,可以將一個變數,一個數組,一個物件的資料繫結到一個變數上,傳遞到表現層中去。在表現層中,我們通過以下幾種方法進行資料呼叫,

//1.取出變數值
//控制器 this->assign('name',valule);
//表現層
{$name}

//2.取出陣列值
//$data = array('name1'=>value1, 'name2'=>value2);
//控制器 this->assign('nameList',$data);
//表現層
//取出name1值
{$nameList['name1']}
//取出name2值
{$nameLIst['name2']}

//3.取出物件值
//控制器 
//$user = M('User');
//this->assign('uobj',$user);
//表現層
//取出name值,兩種方法,習慣點是用來訪問陣列
//冒號
{$uobj:username}
//點
{$uobj.username}

取資料的時候還可以同時對取出來的數值進行函式操作,例如:

//4.格式調節或功能操作
//將變數變為大寫
{$uobj.username | strtoupper}

當然,不是所有的變數都允許使用函式。例如前面列出的變數中的第二種系統變數和第三種路徑替換變數,都不允許使用函式。還有下面的非$開頭的標籤,都不允許使用。

//多個函式同時使用,直接用“|”分割
//函式多個變數傳入
//###表示模板變數 本身的位置
{$mytime | date = 'Y-m-d', ###}

變數輸出快捷標籤:

//取出Session變數
{@var} || {$Think.session.var}
//取出Cookie變數
{#var}   || {$Think.cookie.var}
//輸出配置引數
{&var}   || {$Think.config.var}
//輸出語言變數
{%var}  || {$Think.lang.var}
//輸出GET變數
{.var}     || {$Think.get.var}
//輸出POST變數
{^var}    || {$Think.post.var}
//輸出常量
{×var}    ||{$Think.const.var}
//輸出$_SESSION['var1']['var2']
{@var1.var2}
//輸出$_COOKIE['var1']['var2']
{#var1.var2}  

ThinkPHP系統常量:
//當前網站的公開目錄
__PUBLIC__
//當前網站的地址(不含域名)
__ROOT__
//當前專案的URL地址(不含域名)
__APP__
//當前模組的URL地址(不含域名)
__URL__
//當前頁面的的URL
__SELF__