october中的twig模板

october中使用twig模板語言擴(kuò)展為多個(gè)函數(shù),標(biāo)簽,過濾器和變量。這些擴(kuò)展允許您使用CMS功能并訪問模板中的頁面環(huán)境信息。

變量


模板變量使用雙大括號(hào)打印在頁面上。

{{ variable }}

變量也可以表示表達(dá)式。

{{ isAjax ? 'Yes' : 'No' }}

變量可以與~字符連接。

{{ 'Your name: ' ~ name }}

october 在變量下提供了全局變量this,如變量部分所列。

標(biāo)簽

邏輯判斷、模板上流程處理

標(biāo)簽是Twig的獨(dú)特功能,并且包含{% %}字符。

{% tag %}

標(biāo)簽提供了更流暢的描述模板邏輯的方法。

{% if stormCloudComing %}
    Stay inside
{% else
    Go outside and play
{% endif %}

該{% set %}標(biāo)簽可以用來設(shè)置模板中的變量。

{% set activePage = 'blog' %}

該{% for item in items %}設(shè)置循環(huán)

 {% for post in category.posts %}
    {{post.title}}
 {% endfor %}

過濾器


過濾器作為單個(gè)實(shí)例的變量的修飾符,并使用管道符號(hào)后跟過濾器名稱進(jìn)行應(yīng)用。

{{ 'string'|filter }}
{{ post.content|md}}

過濾器可以像函數(shù)一樣使用參數(shù)。

{{ price|currency('USD') }}

過濾器可以連續(xù)應(yīng)用。

{{ 'October Glory'|upper|replace({'October': 'Morning'}) }}

函數(shù)


函數(shù)允許執(zhí)行邏輯,返回結(jié)果作為一個(gè)變量。

{{ function() }}

函數(shù)可以引用

{{ dump(variable) }}

訪問邏輯


了解Twig最重要的是如何訪問PHP層。為方便起見{{ foo.bar }},對(duì)PHP對(duì)象進(jìn)行以下檢查:

  1. 檢查是否foo是數(shù)組和bar有效元素。
  2. 如果不是,如果foo是對(duì)象,請(qǐng)檢查是否bar是有效的屬性。
  3. 如果沒有,如果foo是一個(gè)對(duì)象,請(qǐng)檢查是否bar是一個(gè)有效的方法(即使bar是構(gòu)造函數(shù) - 使用__construct()替代)。
  4. 如果不是,如果foo是對(duì)象,請(qǐng)檢查是否getBar是有效的方法。
  5. 如果不是,如果foo是對(duì)象,請(qǐng)檢查是否isBar是有效的方法。
  6. 如果沒有,返回null值。

不支持twig的功能

不支持Twig提供的一些功能。它們列在下面的等效功能旁邊。

標(biāo)簽 擴(kuò)展
{% extend %} 使用layouts或{% placeholder %}替代
{% include %} 使用{% partial %} or {% content %}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 134,993評(píng)論 19 139
  • 介紹 Jinja是基于python的模板引擎,功能比較類似于于PHP的smarty,J2ee的Freemarker...
    ZhouLang閱讀 7,983評(píng)論 0 2
  • 1.引言 本文中小結(jié)了Twig模板的入門級(jí)的基本使用(僅適合入門),更多詳細(xì)的使用方法可以訪問:http://...
    我自靜默向韶華閱讀 3,269評(píng)論 1 2
  • 第二章:視圖和URL 2.1第一個(gè)Django驅(qū)動(dòng)的頁面 頁面的內(nèi)容由視圖函數(shù)(view function)生成,...
    m風(fēng)滿樓閱讀 1,032評(píng)論 0 12
  • 聲明:轉(zhuǎn)載請(qǐng)注明出處http://www.lxweimin.com/p/1664dcfd840c 最近在折騰Djan...
    蛇發(fā)女妖閱讀 6,311評(píng)論 1 10