第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定

Smarty模板使用

//通過傳遞進(jìn)來的參數(shù)顯示文章
public function art_list($find, $limit, $where = null, $order=null){
? $order = isset($order) ? $order : "id desc";
? return $this->field($find)->where($where)->limit($limit)->order($order)->all();
}

在這段代碼中,控制器是如何把參數(shù)傳遞給模板的?

正在回答

1 回答

  一.?安裝?

????首先打開網(wǎng)頁http://smarty.php.net/download.php,下載最新版本的Smarty。解壓下載的文件(目錄結(jié)構(gòu)還蠻復(fù)雜的)。接下來我演示給大家一個(gè)安裝實(shí)例,看過應(yīng)該會(huì)舉一反三的。?
????(1)?我在根目錄下建立了新的目錄learn/,再在learn/里建立一個(gè)目錄smarty/。將剛才解壓縮出來的目錄的libs/拷貝到smarty/里,再在smarty/里新建templates目錄,templates里新建cache/,templates/,templates_c/,?config/.?

????(2)?新建一個(gè)模板文件:index.tpl,將此文件放在learn/smarty/templates/templates目錄下,代碼如下:?

復(fù)制代碼代碼如下:

<!DOCTYPE?HTML?PUBLIC?"-//W3C//DTD?HTML?4.01?Transitional//EN"?"http://www.w3.org/TR/html4/loose.dtd">???
<html>???
<head>???
<meta?http-equiv="Content-Type"?content="text/html;?charset=gb2312">???

<title>Smarty</title>???
</head>???
<body>???
{$hello}???
</body>???
</html>?





新建index.php,將此文件放在learn/下:?

復(fù)制代碼代碼如下:

<?php???
//引用類文件???
require?'smarty/libs/Smarty.class.php';???

$smarty?=?new?Smarty;???

//設(shè)置各個(gè)目錄的路徑,這里是安裝的重點(diǎn)???
$smarty->template_dir?=?"smarty/templates/templates";???

$smarty->compile_dir?=?"smarty/templates/templates_c";???

$smarty->config_dir?=?"smarty/templates/config";???
$smarty->cache_dir?=?"smarty/templates/cache";????

????
//smarty模板有高速緩存的功能,如果這里是true的話即打開caching,但是會(huì)造成網(wǎng)頁不立即更新的問題,當(dāng)然也可以通過其他的辦法解決???
$smarty->caching?=?false;???

$hello?=?"Hello?World!";???
//賦值???
$smarty->assign("hello",$hello);???

//引用模板文件???
$smarty->display('index.tpl');???

?>

??



(3)?執(zhí)行index.php就能看到Hello?World!了。?

  二.?賦值?

???????在模板文件中需要替換的值用大括號{}括起來,值的前面還要加$號。例如{$hello}。這里可以是數(shù)組,比如{$hello.item1},{$hello.item2}…?
???????而PHP源文件中只需要一個(gè)簡單的函數(shù)assign(var?,?value)。?
???????簡單的例子:?
???????*.tpl:?
???????Hello,{$exp.name}!?Good?{$exp.time}?

???????*.php:?
???????$hello[name]?=?“Mr.?Green”;?

???????$hello[time]=”morning”;?
???????$smarty->assign(“exp”,$hello);?

???????output:?
???????Hello,Mr.Green!?Good?morning?

三.?引用?
???????網(wǎng)站中的網(wǎng)頁一般header和footer是可以共用的,所以只要在每個(gè)tpl中引用它們就可以了。?
???????示例:*.tpl:?
????{include?file="header.tpl"}?

???????{*?body?of?template?goes?here?*}?

???????{include?file="footer.tpl"}?

  四.?判斷?
???????模板文件中可以使用if?else等判斷語句,即可以將一些邏輯程序放在模板里。"eq",?"ne",?"neq",?"gt",?"lt",?"lte",?"le",??"gte"??"ge",?"is?even",?"is?odd",?"is?not?even",?"is?not?odd",?"not",?"mod",?"div?by",?"even?by",?"odd?by","==","!=",">",?"<","<=",">="這些是if中可以用到的比較。看看就能知道什么意思吧。?

??????示例:?
??????{if?$name?eq?"Fred"}?

?????????????????????Welcome?Sir.?

????{elseif?$name?eq?"Wilma"}?

?????????????????????Welcome?Ma'am.????


????{else}?
?????????????????????Welcome,?whatever?you?are.?

????{/if}?


  五.?循環(huán)?

???????在Smarty里使用循環(huán)遍歷數(shù)組的方法是section,如何賦值遍歷都是在模板中解決,php源文件中只要一個(gè)assign就能解決問題。?
???????示例:?
{*?this?example?will?print?out?all?the?values?of?the?$custid?array?*}?

{section?name=customer?loop=$custid}?

??????????????id:?{$custid[customer]}<br>?
{/section}?

OUTPUT:?

id:?1000<br>?
id:?1001<br>?
id:?1002<br>


0 回復(fù) 有任何疑惑可以回復(fù)我~

舉報(bào)

0/150
提交
取消

Smarty模板使用

我要回答 關(guān)注問題
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號