本篇文章為大家展示了如何在ThinkPHP項(xiàng)目中輸出變量,內(nèi)容簡明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。
創(chuàng)新互聯(lián)成立與2013年,先為建鄴等服務(wù)建站,建鄴等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為建鄴企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。thinkphp屬于一種免費(fèi)的開發(fā)框架,能夠用于開發(fā)前端網(wǎng)頁,最早thinkphp是為了簡化開發(fā)而產(chǎn)生的,thinkphp同時(shí)也是遵循Apache2協(xié)議,最初是從Struts演變過來,也把國外一些好的框架模式進(jìn)行利用,使用面向?qū)ο蟮拈_發(fā)結(jié)構(gòu),兼容了很多標(biāo)簽庫等模式,它能夠更方便和快捷的開發(fā)和部署應(yīng)用,當(dāng)然不僅僅是企業(yè)級(jí)應(yīng)用,任何php應(yīng)用開發(fā)都可以從thinkphp的簡單、兼容和快速的特性中受益。
在Action中賦值了一個(gè)name模板變量:
復(fù)制代碼 代碼如下:
$name = 'ThinkPHP';
$this->assign('name',$name);
使用內(nèi)置的模板引擎輸出變量,只需要在模版文件使用:
{$name}
模板編譯后的結(jié)果就是
復(fù)制代碼 代碼如下:
<?php echo($name);?>
最后運(yùn)行的時(shí)候就可以在標(biāo)簽位置顯示ThinkPHP的輸出結(jié)果,注意模板標(biāo)簽的{和$之間不能有任何的空格,否則標(biāo)簽無效。普通標(biāo)簽?zāi)J(rèn)開始標(biāo)記是 {,結(jié)束標(biāo)記是 },也可以通過設(shè)置TMPL_L_DELIM和TMPL_R_DELIM進(jìn)行更改,例如,我們?cè)陧?xiàng)目配置文件中定義:
復(fù)制代碼 代碼如下:
'TMPL_L_DELIM'=>'<{',
'TMPL_R_DELIM'=>'}>',
那么,上面的變量輸出標(biāo)簽就應(yīng)該改成:
<{$name}>
后面的內(nèi)容我們都以默認(rèn)的標(biāo)簽定義來說明,assign方法里面的第一個(gè)參數(shù)才是模板文件中使用的變量名稱,如果改成下面的代碼:
復(fù)制代碼 代碼如下:
$name = 'ThinkPHP';
$this->assign('name2',$name);
再使用{$name} 輸出就無效了,必須使用 {$name2}才能輸出模板變量的值了.如果我們需要把一個(gè)用戶數(shù)據(jù)對(duì)象賦值給模板變量:
復(fù)制代碼 代碼如下:
$User = M('name');
$user = $User->find(1);
$this->assign('user',$user);
也就是說$user其實(shí)是一個(gè)數(shù)組變量,我們可以使用下面的方式來輸出相關(guān)的值:
復(fù)制代碼 代碼如下:
{$user['name']}//輸出用戶的名稱
{$user['email']} //輸出用戶的email地址
如果$user是一個(gè)對(duì)象而不是數(shù)組的話.
復(fù)制代碼 代碼如下:
$User = M('name');
$User->find(1);
$this->assign('user',$User);
可以使用下面的方式輸出相關(guān)的屬性值:
復(fù)制代碼 代碼如下:
{$user:name}// 輸出用戶的名稱
{$user:email} // 輸出用戶的email地址
3.1版本以后,類的屬性輸出方式有所調(diào)整,支持原生的PHP對(duì)象寫法,所以上面的標(biāo)簽需要改成:
復(fù)制代碼 代碼如下:
{$user->name}// 輸出用戶的名稱
{$user->email} // 輸出用戶的email地址
為了方便模板定義,還可以支持點(diǎn)語法,例如,上面的
復(fù)制代碼 代碼如下:
{$user['name']}// 輸出用戶的名稱
{$user['email']} // 輸出用戶的email地址
可以改成
復(fù)制代碼 代碼如下:
{$user.name}
{$user.email}
因?yàn)辄c(diǎn)語法默認(rèn)的輸出是數(shù)組方式,所以上面兩種方式是在沒有配置的情況下是等效的,我們可以通過配置TMPL_VAR_IDENTIFY參數(shù)來決定點(diǎn)語法的輸出效果,以下面的輸出為例:{$user.name}
如果TMPL_VAR_IDENTIFY設(shè)置為array,那么
{$user.name}和{$user['name']}等效,也就是輸出數(shù)組變量.
如果TMPL_VAR_IDENTIFY設(shè)置為obj,那么
{$user.name}和{$user:name}等效,也就是輸出對(duì)象的屬性。
如果TMPL_VAR_IDENTIFY留空的話,系統(tǒng)會(huì)自動(dòng)判斷要輸出的變量是數(shù)組還是對(duì)象,這種方式會(huì)一定程度上影響效率,而且只支持二維數(shù)組和兩級(jí)對(duì)象屬性。
如果是多維數(shù)組或者多層對(duì)象屬性的輸出,可以使用下面的定義方式:
復(fù)制代碼 代碼如下:
{$user.sub.name}//使用點(diǎn)語法輸出
或者使用
復(fù)制代碼 代碼如下:
{$user['sub']['name']}// 輸出三維數(shù)組的值
{$user:sub:name}// 輸出對(duì)象的多級(jí)屬性
上述內(nèi)容就是如何在ThinkPHP項(xiàng)目中輸出變量,你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
網(wǎng)站題目:如何在ThinkPHP項(xiàng)目中輸出變量-創(chuàng)新互聯(lián)
標(biāo)題網(wǎng)址:http://jinyejixie.com/article40/hggho.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供營銷型網(wǎng)站建設(shè)、微信公眾號(hào)、ChatGPT、網(wǎng)站營銷、外貿(mào)建站、靜態(tài)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容