一聚教程网:一个值得你收藏的教程网站

smarty入门教程四

mg电子:安排普通高中改造计划资金16.5亿元,普通高中国家助学金17亿元,现代职业教育质量提升计划资金13.9亿元,中等职业教育国家助学金和免学费资金60.5亿元,支持云南加快普及高中阶段教育。

时间:2008-03-03 00:00:00 编辑:简简单单 来源:转载

example4.tpl


CODE:[Copy to clipboard]<html>
<head><title>模板中的流程控制</title><head>
<body>
<table border="1" align="center">
{assign var="tbColor" value="green"}
色彩:{$tbColor}<br>

{section name=loop loop=$News}
{if $tbColor == "green"}
<tr bgcolor="{$tbColor}">
{assign var="tbColor" value="orange"}
{else $tbColor == "orange"}
<tr bgcolor = "{$tbColor}">
{assign var="tbColor" value="green"}
{/if}
<td>{$News[loop].newsID}</td>
<td>{$News[loop].newsTitle}</td>
<tr>
{/section}
</table>
</body>
</html>
example4.php


PHP:[Copy to clipboard]
<?php
/*********************************************
*
* 文件名: example4.php
* 作 用: 显示实例程序4
*
* 作 者: 大师兄
* Email: teacherli@163.com

* 修 正: forest
*********************************************/

require_once ("./comm/Smarty.class.php");

$smarty = new Smarty();
$smarty->template_dir = './templates/';
$smarty->compile_dir = './templates_c/';
$smarty->config_dir = './configs/';
$smarty->cache_dir = './cache/';
$smarty->caching = false;

$array[]= array("newsID"=>"001", "newsTitle"=>"第1条新闻");
$array[]= array("newsID"=>"002", "newsTitle"=>"第2条新闻");
$array[]= array("newsID"=>"003", "newsTitle"=>"第3条新闻");
$array[]= array("newsID"=>"004", "newsTitle"=>"第4条新闻");
$array[]= array("newsID"=>"005", "newsTitle"=>"第5条新闻");
$array[]= array("newsID"=>"006", "newsTitle"=>"第6条新闻");
$array[]= array("newsID"=>"007", "newsTitle"=>"第7条新闻");
$array[]= array("newsID"=>"008", "newsTitle"=>"第8条新闻");


$smarty->assign("News", $array);

$smarty->display("example4.tpl");
?>


example4.php输出:
==================================================
<html>
<head><title>模板中的流程控制</title><head>
<body>
<table border="1">

<tr bgcolor="#D4D0C8">

<td>001</td>
<td>第1条新闻</td>
</tr>
<tr bgcolor = "#EEEEEE">

<td>002</td>
<td>第2条新闻</td>
</tr>
<tr bgcolor="#D4D0C8">

<td>003</td>
<td>第3条新闻</td>
</tr>
<tr bgcolor = "#EEEEEE">

<td>004</td>
<td>第4条新闻</td>
</tr>
<tr bgcolor="#D4D0C8">

<td>005</td>
<td>第5条新闻</td>
</tr>
<tr bgcolor = "#EEEEEE">

<td>006</td>
<td>第6条新闻</td>
</tr>
<tr bgcolor="#D4D0C8">

<td>007</td>
<td>第7条新闻</td>
</tr>
<tr bgcolor = "#EEEEEE">

<td>008</td>
<td>第8条新闻</td>
</tr>
</table>
</body>
</html>
===================================================
模板文件中使用:


PHP:[Copy to clipboard]
{if $tbColor == "#D4D0C8"}
<tr bgcolor="{$tbColor}">
{assign var="tbColor" value="#EEEEEE"}
{else $tbColor == "#EEEEEE"}
<tr bgcolor = "{$tbColor}">
{assign var="tbColor" value="#D4D0C8"}
{/if}

 

这一语句块进行设置每一行的背景颜色, {assign var="tbColor" value="#D4D0C8"}还记的吧,是例3中设置模板内部变量的定义方法,

使用模板内置的流程控制语句有时可以极大程度上提高程序的控制能力,下面一个例子是phpx.com中曾经有位朋友问过的,我将它作为
实例放在这里供大家学习.
例4我用来说明{if / elseif /else /if}的使用方法,如果单为了实现隔行的目的,大家可以使用这一句就行了:


PHP:[Copy to clipboard]
{section name=rows loop=$data}
<tr bgcolor="{cycle values="#D4D0C8,#EEEEEE"}">
<td>{$data[rows]}</td>
</tr>
{/section}

 

例5: 使用模板内置流程控制语句进行一行多单元格内容输出, 也就是在视觉上smarty每记输出几条记录:

文章评论

热门栏目

合作: 真人纸牌 赌博网开户 mg电子