当前位置:首页 > 代码 > 正文

smarty模版php代码(smarty php)

admin 发布:2022-12-19 22:52 113


本篇文章给大家谈谈smarty模版php代码,以及smarty php对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

php中smarty 模板结构?

smarty模板的控制结构 if语句控制块常见的if语句写法: if语句在smarty中的应用

# {if $name == "Fred" || $name == "Wilma"}

{* 和上面的例子一样,"or"和"||"没有区别 *}

# ...

{* 如果条件成立则输出这个区块的代码 *}

# {/if}

{* 是条件控制的关闭标记,if必须成对出现* foreach的遍历: 主要是应用在一维数组中. {foreach}要与{/foreach}成对使用,它有四个参数,其中form和item两个是必要的。foreach可以使用的全部参数如表16-4所示。 表16-4 foreach可以使用的选项参数参 数 名描 述类 型默 认 值form待循环数组的名称,该属性决定循环的次数,必要参数数组变量无item确定当前元素的变量名称,必要参数字符串无key当前处理元素的键名,可选参数字符串无name该循环的名称,用于访问该循环,这个名是任意的,可选参数字符串无 foreach来遍历一维数组 foreach来遍历二维数组 也可以在模板中嵌套使用foreach遍历二维数组,但必须保证嵌套中的foreach名称唯一。此外,在使用foreach遍历数组时与下标无关,所以在模板中关联数组和索引数组都可以使用foreach遍历。 二维数组的遍历 1. ?php

2. require "libs/Smarty.class.php";

//包含Smarty类库

3. $smarty = new Smarty();

//创建Smarty类的对象

4. $contact=array(

//声明一个保存三个联系人信息的二维数组

5. array('name'='高某','fax'='1234','email'=

'gao@lampbrother.net','phone'='4321'),

6. array('name'='洛某','fax'='4567','email'=

'luo@lampbrother.net','phone'='7654'),

7. array('name'='峰某','fax'='8910','email'=

'feng@lampbrother.net','phone'='0198')

8. );

9. $smarty-assign('contact', $contact);

//将关联数组$contact分配到模板中使用

10. $smarty-display('index.tpl');

//查找模板替换并输出

11. ?

在进行输出时:

进行遍历的方案 # {foreach from=$contact item=row}

{* 外层foreach遍历数组$contact *}

# tr

{* 输出表格的行开始标记 *}

# {foreach from=$row item=col}

{* 内层foreach遍历数组$row *}

# td{$col}/td

{* 以表格形式输出数组中的每个数据 *}

# {/foreach}

{* 内层foreach区块结束标记 *}

# /tr

{* 输出表格的行结束标记 *}

# {/foreach}

{* 外层foreach区域的结束标记 *}

说明: 这里的遍历是对整个二维数组来进行遍历. foreachelse在进行遍历数组时的应用:foreach标记提供了一个扩展标记foreachelse,这个语句在from变量没有值的时候被执行,就是在数组为空时foreachelse标记可以生成某个候选结果。在模板中foreachelse标记不能独自使用,一定要与foreach一起使用。而且foreachelse不需要结束标记,它嵌入在foreach中,与elseif嵌入在if语句中很类似。 foreach为二维数组 1. {foreach key=key item=value from=$array}

{* 使用foreach遍历数组$array中的键和值 *}

2. {$key} = {$item} br

{* 在模板中输出数组$array中元素的键和值对 *}

3. {foreachelse}

{* foreachelse在数组$array没有值的时候被执行*}

4. p数组$array中没有任何值/p

{* 如果看到这条语句,说明数组中没有任何数据*}

5. {/foreach}

{* foreach需要成对出现,是foreach的结束标记 *} section的循环遍历section来循环遍历二维数组二维数组的遍历 说明:这是一个二维数组的定义

$contact=array( //声明一个保存三个联系人信息的二维数组

array('name'='高某','fax'='1234','email'='gao@lampbrother.net','phone'='4321'),

array('name'='洛某','fax'='4567','email'='luo@lampbrother.net','phone'='7654'),

array('name'='峰某','fax'='8910','email'='feng@lampbrother.net','phone'='0198')

);

$smarty-assign('contact', $contact); //将关联数组$contact分配到模板中使用

说明:使用section来进行遍历,其中对于是关联数组的数组访问,使用"."号形式来访问

{section name=line loop=$contact} {* 使用section遍历数组$contact *}

tr {* 输出表格的行开始标记 *}

td{$contact[line].name}/td {* 输出数组第二维中下标为name的元素值 *}

td{$contact[line].fax}/td {* 输出数组第二维中下标为fax的元素值*}

td{$contact[line].email}/td {* 输出数组第二维中下标为email的元素值*}

td{$contact[line].phone}/td {* 输出数组第二维中下标为phone的元素值*}

/tr {* 输出表格的行结束标记 *}

{/section} {* section区域的结束标记 *}

php简单smarty入门程序实例

本文实例讲述了php简单smarty入门程序。分享给大家供大家参考。具体如下:

首先要有3个文件夹configs、templates、templates_c,在configs文件夹中有一个配置文件:test.conf,代码:

title

=

Welcome

to

Smarty!

cutoff_size

=

40

[setup]

bold

=

true

templates中有模板文件:test.htm:

html

head

titleSmarty

Test/title

/head

body

H1Hello,

{$Name}/H1

/body

/html

php文件代码:

?php

require

'libs/Smarty.class.php';

//包含Smarty类库文件

$smarty

=

new

Smarty;

//创建一个新的Smarty对象

$smarty-assign("Name","Simon");

//对模版中的变量赋值

$smarty-display('test.htm');

//显示页面

?

运行后显示的页面代码:

html

head

titleSmarty

Test/title

/head

body

H1Hello,

Simon/H1

/body

/html

运行之后,还在templates_c文件夹中生成一个php文件:

?php

/*

Smarty

version

2.6.22,

created

on

2009-03-19

13:20:00

compiled

from

test.htm

*/

?

html

head

titleSmarty

Test/title

/head

body

H1Hello,

?php

echo

$this-_tpl_vars['Name'];

?

/H1

/body

/html

这个文件就是浏览所显示出来的效果。

希望本文所述对大家的php程序设计有所帮助。

smarty 模板怎样使用php标签

smarty本身是不推荐使用php标记的,可以通过编写插件(block,function,modifier)来代替。

smarty默认不开启php标记,需要在创建smarty对象后做如下设置:

$smarty-php_handling = SMARTY_PHP_ALLOW ;

php用smarty的html模板中文输出乱码

建议把 $arr 转化下语言,譬如 $arr=mb_convert_encoding($arr, ''UTF-8'', 'GBK'); 然后再输入试试。

关于smarty模版php代码和smarty php的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

版权说明:如非注明,本站文章均为 AH站长 原创,转载请注明出处和附带本文链接;

本文地址:http://ahzz.com.cn/post/28673.html


取消回复欢迎 发表评论:

分享到

温馨提示

下载成功了么?或者链接失效了?

联系我们反馈

立即下载