【ThinkPHP學習】取值的方法總結
阿新 • • 發佈:2019-01-24
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__