亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

ThinkPHP模版引擎之變量輸出詳解

 更新時間:2014年12月05日 10:22:50   投稿:shichen2014  
這篇文章主要介紹了ThinkPHP模版引擎的變量輸出用法,分析了變量輸出的常見用法與使用技巧,非常具有實用價值,需要的朋友可以參考下

本文實例分析了ThinkPHP模版引擎中變量輸出的用法。分享給大家供大家參考。具體分析如下:

我們已經(jīng)知道了在Action中使用assign方法可以給模板變量賦值,賦值后怎么在模板文件中輸出變量的值呢?

如果我們在Action中賦值了一個name模板變量:

復(fù)制代碼 代碼如下:
$name = 'ThinkPHP';
$this->assign('name',$name);

使用內(nèi)置的模板引擎輸出變量,只需要在模版文件使用:
{$name}

模板編譯后的結(jié)果就是

復(fù)制代碼 代碼如下:
<?php echo($name);?>

最后運行的時候就可以在標(biāo)簽位置顯示ThinkPHP的輸出結(jié)果,注意模板標(biāo)簽的{和$之間不能有任何的空格,否則標(biāo)簽無效。普通標(biāo)簽?zāi)J開始標(biāo)記是 {,結(jié)束標(biāo)記是 },也可以通過設(shè)置TMPL_L_DELIM和TMPL_R_DELIM進行更改,例如,我們在項目配置文件中定義:

復(fù)制代碼 代碼如下:
'TMPL_L_DELIM'=>'<{', 
'TMPL_R_DELIM'=>'}>',

那么,上面的變量輸出標(biāo)簽就應(yīng)該改成:

<{$name}>

后面的內(nèi)容我們都以默認的標(biāo)簽定義來說明,assign方法里面的第一個參數(shù)才是模板文件中使用的變量名稱,如果改成下面的代碼:

復(fù)制代碼 代碼如下:
$name = 'ThinkPHP';
$this->assign('name2',$name);

再使用{$name} 輸出就無效了,必須使用 {$name2}才能輸出模板變量的值了.如果我們需要把一個用戶數(shù)據(jù)對象賦值給模板變量:
復(fù)制代碼 代碼如下:
$User = M('name');
$user = $User->find(1);
$this->assign('user',$user);

也就是說$user其實是一個數(shù)組變量,我們可以使用下面的方式來輸出相關(guān)的值:
復(fù)制代碼 代碼如下:
{$user['name']}//輸出用戶的名稱
{$user['email']} //輸出用戶的email地址

如果$user是一個對象而不是數(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對象寫法,所以上面的標(biāo)簽需要改成:
復(fù)制代碼 代碼如下:
{$user->name}// 輸出用戶的名稱
{$user->email} // 輸出用戶的email地址

為了方便模板定義,還可以支持點語法,例如,上面的 
復(fù)制代碼 代碼如下:
{$user['name']}// 輸出用戶的名稱
{$user['email']} // 輸出用戶的email地址

可以改成
復(fù)制代碼 代碼如下:
{$user.name}
{$user.email}

因為點語法默認的輸出是數(shù)組方式,所以上面兩種方式是在沒有配置的情況下是等效的,我們可以通過配置TMPL_VAR_IDENTIFY參數(shù)來決定點語法的輸出效果,以下面的輸出為例:{$user.name}

如果TMPL_VAR_IDENTIFY設(shè)置為array,那么

{$user.name}和{$user['name']}等效,也就是輸出數(shù)組變量.

如果TMPL_VAR_IDENTIFY設(shè)置為obj,那么

{$user.name}和{$user:name}等效,也就是輸出對象的屬性。

如果TMPL_VAR_IDENTIFY留空的話,系統(tǒng)會自動判斷要輸出的變量是數(shù)組還是對象,這種方式會一定程度上影響效率,而且只支持二維數(shù)組和兩級對象屬性。

如果是多維數(shù)組或者多層對象屬性的輸出,可以使用下面的定義方式:

復(fù)制代碼 代碼如下:
{$user.sub.name}//使用點語法輸出

或者使用

復(fù)制代碼 代碼如下:
{$user['sub']['name']}// 輸出三維數(shù)組的值 
{$user:sub:name}// 輸出對象的多級屬性

希望本文所述對大家基于ThinkPHP框架的PHP程序設(shè)計有所幫助。

相關(guān)文章

  • TP5(thinkPHP5)框架基于ajax與后臺數(shù)據(jù)交互操作簡單示例

    TP5(thinkPHP5)框架基于ajax與后臺數(shù)據(jù)交互操作簡單示例

    這篇文章主要介紹了TP5(thinkPHP5)框架基于ajax與后臺數(shù)據(jù)交互操作,結(jié)合實例形式分析了thinkPHP5前端基于jQuery的ajax數(shù)據(jù)提交及后臺數(shù)據(jù)接收、處理相關(guān)操作技巧,需要的朋友可以參考下
    2018-09-09
  • PHP按行讀取、處理較大CSV文件的代碼實例

    PHP按行讀取、處理較大CSV文件的代碼實例

    這篇文章主要介紹了PHP按行讀取、處理較大CSV文件的代碼實例,需要的朋友可以參考下
    2014-04-04
  • php版微信公眾號自定義分享內(nèi)容實現(xiàn)方法

    php版微信公眾號自定義分享內(nèi)容實現(xiàn)方法

    這篇文章主要介紹了php版微信公眾號自定義分享內(nèi)容實現(xiàn)方法,結(jié)合實例形式分析了php實現(xiàn)微信公眾號自定義分享內(nèi)容的接口調(diào)用與相關(guān)使用技巧,需要的朋友可以參考下
    2016-09-09
  • laravel 實現(xiàn)關(guān)閉CSRF(全部關(guān)閉、部分關(guān)閉)

    laravel 實現(xiàn)關(guān)閉CSRF(全部關(guān)閉、部分關(guān)閉)

    今天小編就為大家分享一篇laravel 實現(xiàn)關(guān)閉CSRF(全部關(guān)閉、部分關(guān)閉),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-10-10
  • CodeIgniter基于Email類發(fā)郵件的方法

    CodeIgniter基于Email類發(fā)郵件的方法

    這篇文章主要介紹了CodeIgniter基于Email類發(fā)郵件的方法,結(jié)合實例形式分析了CodeIgniter調(diào)用CI自帶的Email類實現(xiàn)發(fā)送郵件的相關(guān)使用技巧,需要的朋友可以參考下
    2016-03-03
  • Laravel 微信小程序后端搭建步驟詳解

    Laravel 微信小程序后端搭建步驟詳解

    這篇文章主要介紹了Laravel 微信小程序后端搭建步驟詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • Yii中表單用法實例詳解

    Yii中表單用法實例詳解

    這篇文章主要介紹了Yii中表單用法,結(jié)合實例形式較為詳細的分析總結(jié)了Yii針對表單的各種常用操作技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2016-01-01
  • php學(xué)習(xí)Eloquent修改器源碼示例解析

    php學(xué)習(xí)Eloquent修改器源碼示例解析

    這篇文章主要為大家介紹了php學(xué)習(xí)Eloquent修改器源碼示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-06-06
  • 修改apache配置文件去除thinkphp url中的index.php

    修改apache配置文件去除thinkphp url中的index.php

    這篇文章主要介紹了修改apache配置文件去除thinkphp url中的index.php的方法,大家參考使用吧
    2014-01-01
  • PHP Cookei記錄用戶歷史瀏覽信息的代碼

    PHP Cookei記錄用戶歷史瀏覽信息的代碼

    購物類網(wǎng)站有時候需要了解用戶最近的需求,收集和推送用戶的查看記錄成為了大部分此類的網(wǎng)站不可缺少的功能,下面是本人在開發(fā)項目中自己寫的方法,一來留有保存,二來和大家分享
    2016-02-02

最新評論