中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

smarty前端常用標簽

發布時間:2020-06-30 09:51:01 來源:網絡 閱讀:3651 作者:李生虎lsh 欄目:web開發

{*

{extends file='blockparent.tpl'}

*}

{*必須放在模板的第一行,如果要用子模板來擴展父模板,那么它只能有{block}的區域任何其他模板的內容將被忽略*}

{config_load file='config.conf'}{*載入配置文件*}

<html>

<head>

<meta charset='utf-8' />

<style type="text/css">

.nav{

margin-left:40px;

}

</style>

<!--訪問普通變量-->

<title>{$title}</title>

</head>

<body>

<div>

<!--smarty注釋-->

{*訪問索引數組*}<span>訪問索引數組:</span>

{$arr1[0]}

</div>

<div>

{*訪問關聯數組*}<span>訪問關聯數組:</span>

{$arr2.name}

</div>

<div>

<span>訪問二維數組:</span>

{$arr3.world.china}

</div>

<div>

<span>訪問配置文件變量:</span>

{#webname#}

</div>

<div>

<span>保留變量:</span>

<div class="nav">

<!--<span>POST</span>{* $smarty.post.page *}相當于$_POST['page'],GET類似-->

{*

$smarty.server.SERVER_NAME;相當于$_SERVER['SERVER_NAME']

*}

<span>SERVER:</span>

{$smarty.server.SERVER_NAME}

{*

類似的操作有env,session,requirest等

*}

</div>

<div>

<span>變量修飾器</span>

<div class="nav">


<span>capitalize:</span><br>{*格式化單詞*}

<span class='nav'>{$str|capitalize}{*默認*}</span><br>

<span class='nav'>

{$str|capitalize:true}</span><br>{*帶數字的開頭是否大寫,第二個參數,首字母后面的是不是小寫*}

<span class='nav'>

{$str|capitalize:true:true}{*多個參數用冒號隔開*}</span>

<br>


<span>cat:</span><br>{*字符串連接函數*}

<span class='nav'>

{$str1|cat:'huge!'}

</span><br>


<span>count_characters:</span><br>{*計算字符數*}

<span class='nav'>

{$str|count_characters}

</span><br>

<span class='nav'>

{$str|count_characters:true}{*包含空格*}

</span><br>

{*

類似函數有,count_paragraphs:計算段落數,以換行符為標識

count_sentences:計算變量有多少個句子。每個句子必須以點號、問號或者感嘆號結尾

count_words:計算變量內容有多少個單詞

*}

<span>count_paragraphs:</span>

<div class='nav'>

{$str2}<br>

{$str2|count_paragraphs}

</div>


<span>date_format:</span><br>{*格式化日期的顯示*}

<span class='nav'>

{$smarty.now|date_format:'%Y-%m-%d %l:%M:%S %p'}{*12小時制*}

{*%T等價于%H:%M:%S,24小時制*}

{*%p:只顯示AM或PM;%r:等價于%l:%M:%S %p*}

</span><br>

{*其他變量修飾器:

default:設置默認值,當變量未定義或為空時,啟用,需要傳入默認值

escap:可用于將變量編碼成html,url,單引號,16進制,16進制實體,javascript和電子郵件,默認是html

unescap:escap的解碼函數

indent:代碼縮進,默認是4個空格,可以自行設置數目和類型,但頁面顯示無效果,只支持代碼縮進

lower:將字符串轉換為小寫

upper:將變量轉換為大寫字母

nl2br:將變量值中'\n'轉換為<br>

regex_replace:用正則表達式搜索和替換變量值,參數分別是正則表和要替換的字符達式

replace:對變量進行簡單的搜索和替換,同上,只是第一個參數直接是字符串

spacify:會在變量的字符串中插入空格,可以設置插入字符的類型

string_format:格式化字符串,如浮點數,指定哪種格式,springf()

strip:轉換連續空格,回車和tab到單個空格或是指定的字符串

strip_tag:去除標記等包含在<和>中間的字符,參數bool值,指定是否將標簽轉換為空格

from_charset:將變量值轉換為當前的字符集

to_charset:可將變量值由當前的內置字符集轉換到指定的字符集

truncate:截取字符串到指定的長度,默認是80,截取后字符的長度是截取規定的長度加上第二個參數的字符長度,參數1,長度,默認80,參數2,替代顯示字符,默認...,參數3,是否按單詞截取,默認true,參數4,當字符截取度剛好等于字符本身的長度時,是否截取,默認true

wordwrap:限制一行字符的長度(自動換行)默認是80,參數1,行長度,參數2,換行符,默認'\n',參數3,設置按單詞換行(false,默認),還是按字符換行(true)

*}

</div>

<div>

{*多個修飾器用|隔開,按從左到右,依次作用于變量*}

<span>復合變量修飾器</span><br>

<div class='nav'>

<span>upper,truncate:</span><br>

{$str1|truncate:10|upper}

</div>

</div>

<div>

<span>內置函數:</span>

<div class="nav">

<span>appand</span>{*在運行時為數組變量增加或創建值*}<br>

<span class='nav'>

{append var='arr' value='元素1' index='first'}

The first name is {$arr.first}

</span><br>

<span>assign</span><br>{*在模板運行時,給變量賦值*}

<span class='nav'>

{assign var='name' value='huge'}

The Name is {$name}

</span><br>

<span>block:</span><br>

{*

可以再模板上定義一塊區域,以進行模板繼承,參數1,模板區域名稱;參數2,append:區域代碼將附加到父母版{block}內容之后,參數3,prepend:之前,hide在沒有該名稱區域時,忽略區域內容,nochache:關閉緩沖,可以通過$smarty.block.parent和$smarty.block.child來獲取父元素和子元素

*}

<div class='nav'>

{literal}會重寫當前的文檔流

{extends file='blockparent.tpl'}

{block name='pblock'}childblock{/block}{*直接覆蓋父元素*}

{block name='pblock' append}appendchildblock{/block}{*置于父元素后面,prepend用法類似*}

{block name='pblock' }{$smarty.block.parent}{/block}

{*獲取父元素中的全部內容,包括不在block中的內容,$smarty.block.child*}

{/literal}

{*literal:將標簽內的內容原樣輸出*}

</div>

<span>call:</span><br>

{*

可以調用一個通過{function}標簽定義的模板函數,參數1,name,函數名;參數2,

*}

{function name='myfun'}

this is a function標簽

{/function}

<span class='nav'>

{call name='myfun'}

</span>

<br>

<span>capture:</span><br>

<span class='nav'>

{capture name='mycap'}This is a capture{/capture}

{$smarty.capture.mycap}

</span><br>

<span>for:</span><br>

<span class='nav'>

{for $i=20 to 10 max=3}{*簡單的for循環,max,可選,設置最大循環次數*}

item{$i}&nbsp;

{forelse}沒有循環時,顯示的內容。

{/for}

</span><br>

<span>if:</span><br>

<span class='nav'>

{if $myname eq 'huge'}

welcome huge!

{elseif $myname=='萍兒'}

welcome 學姐

{else}

對不起,不為外星人提供服務!

{/if}

</span><br>

<span>include:</span><br>

<div class="nav">

{include file='include.tpl' title='名單'}

</div>

{*

{ldelim}:左定界符

{rdelim}:右定界符

這樣直接在瀏覽器輸出這兩個定界符,不進行解析

*}

<span>nocache:</span><br>{*關閉局部緩沖*}

{nocache}

<span class='nav'>

{$smarty.now|date_format:'%T'}

</span>

{/nocache}<br>

<span>section:</span><br>

<span class='nav'>

{section name='sc' loop=$arr1 start=0 step=1 max=3 show=true}

{$arr1[sc]}

{sectionelse}

控數組

{/section}

</span><br>

<span>strip:</span><br>{*過濾多余空格和回車,使頁面內容在一行顯示*}

<span class='nav'>

{strip}

<table border='0'>

<tr>

 <td>

  <a href="#">

   <font color="red">This is a test</font>

  </a>

 </td>

</tr>

</table>

{/strip}

</span>

<span>while:</span><br>

<span class='nav'>

{while $len>1}

item{$len--}&nbsp;

{/while}

</span>

</div>

</div>

</div>

<div>

<span>自定義函數</span><br>

<div class="nav">

<span>counter:</span>{*計數器*}

<div class="nav">

{counter name='cal' start=0 skip=2 assign='abc'}

{counter}&nbsp;{counter}&nbsp;{$abc}

</div>

<span>cycle:</span>

{*

交替循環一系列值

name:交替循環的名稱

values:交替遍歷的值,可以使逗號隔開的字符串或數組

print:是否顯示,默認true

advance:是否遞進到下一個值

delimiter:values屬性使用的限定符

assign:賦值的變量名

reset:交替循環將重置回到最前面的值,而不是遞進

*}

{for $i=0 to 5}

<div >第{$i}行</div>

{/for}

<span>eval:</span>{*var 需要執行的變量或字符串,assign分配給某個變量*}

{eval var=$str1}<br>

<span>fetch:</span>{*抓取本地換外網上的網頁*}

<div class="nav">

{*

{fetch file='http://www.baidu.com/'}

*}

</div>

<span>html_checkboxes:</span>

<div class="nav">

{html_checkboxes name='cbx' options=$arr4 selected=1001 separator='<br>'}

</div>

{*類似的標簽還有

html_p_w_picpath:file:路徑,height,width:顯示高度和寬度,alt,href:鏈接地址,如果設置會在外圍加上a標簽,path_prefix,使用該標簽在不開啟緩沖的情況下,會降低性能

html_options:values,數組;output:下拉顯示的數組,selected:選中項;name:select組的名稱;options:鍵值對數組,用于下拉框

html_radios:同html_checkboxes

html_date,html_time:顯示日期、時間,參數比較多

html_table:用數組的形式創建一個表格

mailto:創建一個mailto鏈接

math:在模板中進行一些數學運算

text_format:格式化文本的塊函數

*}

<span>html_date:</span>

<div class="nav">

{html_select_date prefix='日期'  start_year='-5' end_year='+1' month_format='%m' field_order='YMD'}

</div>

<span>html_time:</span>

<div class="nav">

{html_select_time}

</div>

<span>html_table:</span>

<div class="nav">

{html_table loop=$arr5 cols='列1,列2,列3' table_attr='border="0"' tr_attr=$tr inner=rows hdir=left caption='表頭'}

</div>

</div>

</div>

<div>

<span>注冊類</span><br>

<div class="nav">

{myclass::$property}

</div>

</div>

<div>

<span>注冊函數</span><br>

<div class="nav">

{my_fun param=huge}

</div>

</div>

<div>

<span>注冊塊函數</span><br>

<div class="nav">

{mybk background-color=yellow}

這是一個塊函數

{/mybk}

</div>

</div>

<div>

<span>自定義函數</span><br>

<div class="nav">

{myfuninfo name=huge}

</div>

</div>

</div>

</html>

{*

{debug}:顯示數據頁面中各個已賦值變量的名稱和值

*}

目錄結構:

smarty前端常用標簽

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

禄丰县| 饶河县| 巴青县| 张家川| 页游| 彰武县| 龙南县| 井陉县| 赤水市| 昌图县| 汝南县| 天峻县| 南汇区| 十堰市| 赫章县| 兴隆县| 喀喇沁旗| 金阳县| 海晏县| 酒泉市| 冀州市| 郎溪县| 诏安县| 榆树市| 吐鲁番市| 布尔津县| 称多县| 罗田县| 文安县| 华池县| 云和县| 肥乡县| 民权县| 凤山市| 田阳县| 长兴县| 张掖市| 博爱县| 刚察县| 肇州县| 瑞安市|