国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

PHPTAL模板引擎語法

Meils / 2409人閱讀

摘要:來源于阿賢博客模板引擎語法數據本文檔的使用到的數據定義變量標題兩維數組標題標題標題標題輸出的數據結構屬性優先權定義變量屬性有效空間定義變量定義全局變量和局部變量結果定義默認值變量結果有效空間定義變量定義拼接變量或結果

來源于:阿賢博客

PHPTAL模板引擎語法 PHP 數據
本文檔的使用到的數據($talData)
//定義talData變量
$talData = array();

$talData["title"] = "title1";
$talData["key"] = "key1";
$talData["href"] = "xxx.html";
$talData["html"] = "

h1標題

"; $talData["fun"] = function($key=""){ return $key === "key1"? true : false; }; //兩維數組 $talData["list1"] = array( array("id"=>"1", "title"=>"標題1"), array("id"=>"2", "title"=>"標題2"), array("id"=>"3", "title"=>"標題3"), array("id"=>"4", "title"=>"標題4") );
//輸出的數據結構
{"title":"title1","key":"key1","href":"xxx.html","html":"
h1u6807u9898","fun":{},"list1":[{"id":"1","title":"u6807u98981"},{"id":"2","title":"u6807u98982"},{"id":"3","title":"u6807u98983"},{"id":"4","title":"u6807u98984"}]}
屬性優先權

define 定義變量

condition

repeat

content or replacae

attributes 屬性

omit-tag

TAL有效空間 定義變量
定義全局(global)變量title和局部變量 key
${title} && ${key}
${title} && ${key}
title1 && key1
title1 &&
定義默認值變量
${fname} && ${lname}
${fname} && ${lname}
fname1 string && lname1 string
fname1 string &&
TAL有效空間 定義變量
定義拼接變量

${hello}

${hello}

hello fname1 string welcome on this page

定義變量,執行php方法

${rand}

2

TAL有效空間 輸出內容
tal:replace="數據" 將用值替代整個標簽,如果沒有賦值將替空

    

渲染1

不渲染這里

不渲染這里

${talData/title}

渲染1

title1

title1

tal:content="數據" 將會替代標簽內的內容

test datatips

title1

TAL有效空間 輸出內容
${數據}

${talData/title}

title1

tal:attributes 將會改變tag的屬性或值
sample link

key1
tal:on-error="string: 出錯時顯示內容" ;出錯時顯示error內容,并且沒有當前標簽;
key 已經是定義了
ky 沒有定義的

key1
當前數據不存在
TAL有效空間 判斷條件
tal:condition="數據",條件是true,標簽和它的內容就會被顯示

標題

關鍵詞

關鍵詞

關鍵詞

關鍵詞

title1

key1

key1

key1

TAL有效空間 循環
tal:repeat="賦值變量 數據";屬性循環它的元素和內容直到結束
  • repeat/item/key: ${repeat/item/key} ;(如果talData/list1是一組聯合對象,返回item的鍵)
    repeat/item/index: ${repeat/item/index} ;(返回索引號(0~count-1))
    repeat/item/number: ${repeat/item/number} ;(返回索引號(1~count))
    repeat/item/even: ${repeat/item/even} ;(如果是偶數,true)
    repeat/item/odd: ${repeat/item/odd} ;(如果是奇數,true)
    repeat/item/start: ${repeat/item/start} ;(如果是第一個元素,true)
    repeat/item/end: ${repeat/item/end} ;(如果是最后一個元素,true)
    repeat/item/length: ${repeat/item/length} ;(返回talData/list1里面元素個數)
    -------------
  • 列表li
  • repeat/item/key: 0 ;(如果talData/list1是一組聯合對象,返回item的鍵)
    repeat/item/index: 0 ;(返回索引號(0~count-1))
    repeat/item/number: 1 ;(返回索引號(1~count))
    repeat/item/even: 1 ;(如果是偶數,true)
    repeat/item/odd: 0 ;(如果是奇數,true)
    repeat/item/start: 1 ;(如果是第一個元素,true)
    repeat/item/end: 0 ;(如果是最后一個元素,true)
    repeat/item/length: 4 ;(返回talData/list1里面元素個數)
  • 標題2
  • 標題3
  • 標題4
  • TAL有效空間 標簽渲染與否
    tal:omit-tag="condition";要求phptal解析時忽略實體的開關閉標簽,它的內容仍然會顯示.

    omit-tag值為真,不出現當前p標簽,否則就出現當前p標簽

    omit-tag值為真,不出現當前p標簽,否則就出現當前p標簽

    omit-tag值為真,不出現當前p標簽,否則就出現當前p標簽

    omit-tag值為真,不出現當前p標簽,否則就出現當前p標簽
    ;代替標簽,標簽永遠不輸出
    文字會出現十次
    
    12345678910
    METAL空間 支持宏
    metal:define-macro 定義宏
    
    
        
    
    metal:use-macro 調用宏
    
        當前內容會被宏替換掉
        
    
    
    METAL空間 支持宏
    metal:define-slot 定義宏標簽替換
    
    
        
        
    
    metal:fill-slot 使用宏標簽替換
    
        
            var mlog_page = "mobile_index";
        
    
    METAL空間 支持宏
    宏獲取參數
    
    
        

    ${title}

    ${key}

    宏傳參數(tal:define)
    phptal空間
    phptal:debug
    phptal:cache 使整個元素(包括標簽)保存在磁盤而不重新解析直到cache失效,有效期的格式由數字和"d", "h","m"或"s"組成.
    
    有效期可以有選擇的跟隨"per"參數來定義多少個緩存被共享,使用"per url"分別針對每個url復制元素.
    
    使用php:語法
    如下所述同正規表達式,除了->被替換成.及變量不需要前綴$,使用空格裝配由點分隔的字符串.
    php:htmlentities(foo)
    php:"string ${varReplaced}"
    php:"string ${some.path().to[0].var}"
    php:foo.a.b.c(e).htmlentities(SomeClass::staticMethod())
    php:SomeClass::ConstOfClass
    php:SomeClass::$staticVar
    使用not:、exists:語法
    not:可以用于tal:condition中,相反判斷
    not logged
    
    not logged
    exists:可以用于tal:condition中,判斷存在
    存在
    
    title1
    使用default、structure語法
    default默認值;在 tal:define、tal:content、tal:attributes 使用
    
    default my var value
    
    

    沒有var,沒有找到path

    Unknown page

    沒有var,沒有找到path

    Unknown page
    使用structure語法 允許將包括html/xml等變量輸出顯示;
    注意存在XSS攻擊風險,謹慎使用

    在tal:content中使用

    h1標題

    h1標題

    在${}中使用
    ${talData/html}
    ${structure talData/html}

    h1標題

    h1標題

    相關資料

    官網

    php手冊

    來源于:阿賢博客

    文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

    轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/29147.html

    相關文章

    • 構建一個使用 Virtual-DOM 的前端模版引擎

      摘要:目錄前言問題的提出模板引擎和結合的實現編譯原理相關模版引擎的詞法分析語法分析與抽象語法樹代碼生成完整的結語前言本文嘗試構建一個前端模板引擎,并且把這個引擎和進行結合。于是就構思了一個方案,在前端模板引擎上做手腳。 作者:戴嘉華 轉載請注明出處并保留原文鏈接( https://github.com/livoras/blog/issues/14 )和作者信息。 目錄 前言 問題的提出...

      imccl 評論0 收藏0
    • js模版引擎介紹

      摘要:使用方法編譯模板并根據所給的數據立即渲染出結果僅編譯模版暫不渲染,它會返回一個可重用的編譯后的函數根據給定的數據,對之前編譯好的模板進行數據渲染參考資料模板引擎概述 js模版引擎介紹 JavaScript 模板是將 HTML 結構從包含它們的內容中分離的方法。模板系統通常會引入一些新語法,但通常是非常簡單的,一個要注意的有趣的點是,替換標記通常是由雙花括號({ {……} })表示,這也...

      duan199226 評論0 收藏0
    • 編寫javascript模板引擎的幾個步驟

      摘要:先推薦一個我自己寫的模板引擎,項目地址。下面就是總結的編寫模板引擎的幾個步驟例如一個模板為最終會編譯成為一個函數可以觀察到模板中的所有的變量名都被指定成了參數對象的屬性,并且該函數自始至終只做了一件事,就是構建字符串,并將其返回。 showImg(https://segmentfault.com/img/remote/1460000007498588?w=300&h=113); 先推薦...

      xiaoxiaozi 評論0 收藏0
    • Web前端模板引擎の字符串模板

      摘要:這是一個系列文章,將會介紹目前前端領域里用到的三種模板引擎技術,它們分別是基于字符串的模板基于操作的模板基于虛擬的模板本文是這個系列的第一篇,著重介紹基于字符串的模板引擎的實現原理,分析它的優點缺點以及使用的場景。 這是一個系列文章,將會介紹目前Web前端領域里用到的三種模板引擎技術,它們分別是: 基于字符串的模板 基于Dom操作的模板 基于虛擬Dom的模板 本文是這個系列的第一篇...

      Pluser 評論0 收藏0
    • 字符串與JavaScript之間的魔術—前端模板的原理及簡單實現

      摘要:大多數模板實現原理基本一致模板字符串首先通過各種手段剝離出普通字符串和模板語法字符串生成抽象語法樹然后針對模板語法片段進行編譯,期間模板變量均去引擎輸入的變量中查找模板語法片段生成出普通片段,與原始普通字符串進行拼接輸出。 前端模板的發展 模板可以說是前端開發最常接觸的工具之一。將頁面固定不變的內容抽出成模板,服務端返回的動態數據裝填到模板中預留的坑位,最后組裝成完整的頁面html字符...

      Steve_Wang_ 評論0 收藏0

    發表評論

    0條評論

    最新活動
    閱讀需要支付1元查看
    <