夺命雷公狗---Smarty NO:10 foreach数组的遍历

功能:主要实现对数组的遍历输出

基本语法:

foreach,foreachelse

{foreach from=数组 key=键 name=名称 item=内容 }

{foreachelse}

{/foreach}

from:要遍历输出的数组

item:每次遍历时,系统会自动将遍历的结果放入item内容中

key:键值,每次遍历时,系统会将遍历的键值放入key中

name:foreach名称,为foreach起名

foreachelse:当数组为空时,执行此句

demo4.html示例代码

<!DOCTYPE html>
<html>
<head>
<meta charset=’utf-8′>
<title></title>
</head>
<body>
{*一维数组*}
{foreach from=$lamp item=’val’}
{$val}<hr/>
{/foreach}
{*二维数组*}
{foreach from=$persons item=’row’}
{$row[‘name’]}–{$row[‘age’]}–{$row[‘sex’]}
<hr/>
{/foreach}
{*其他参数的使用*}
{foreach from=$lamp item=’val’ key=’k’}
{$k}:{$val}<hr/>
{/foreach}
{*附加属性*}
{foreach from=$persons item=’row’ name=’ps’}
{$smarty.foreach.ps.index}:{$smarty.foreach.ps.iteration}:{[email protected]}:{[email protected]}
{$row[‘name’]}-{$row[‘age’]}-{$row[‘sex’]}<HR/>
{/foreach}
单前总共有{$smarty.foreach.ps.total}条记录
</body>
</html>

demo4.php代码示例

<?php
require “smarty/Smarty.class.php”;
$smarty = new Smarty();
$lamp = array(‘php’,’mysql’,’apache’,’linux’);
$persons = array(
array(‘name’=>’lisi’,’age’=>’22’,’sex’=>’nan’),
array(‘name’=>’zhangsam’,’age’=>’33’,’sex’=>’nv’),
array(‘name’=>’wangwu’,’age’=>’44’,’sex’=>’yao’),
array(‘name’=>’jj’,’age’=>’16’,’sex’=>’nan’)
);
$smarty -> assign(‘lamp’,$lamp);
$smarty -> assign(‘persons’,$persons);
$smarty -> display(“demo4.html”);

例4:foreach附加属性

$smarty.foreach.name.index      @index :循环索引(默认从0开始)

$smarty.foreach.name.iteration   @iteration :循环迭代(当前是第几次循环)

$smarty.foreach.name.first       @first :当第一次循环时,此值为true

$smarty.foreach.name.last       @last :当最后一次循环时,此值为true

$smarty.foreach.name.total       @total :统计当前循环次数

{*附加属性*}
{foreach from=$persons item=’row’ name=’ps’}
{$smarty.foreach.ps.index}:{$smarty.foreach.ps.iteration}:{[email protected]}:{[email protected]}
{$row[‘name’]}-{$row[‘age’]}-{$row[‘sex’]}<HR/>
{/foreach}
单前总共有{$smarty.foreach.ps.total}条记录

示例代码:

时间: 2024-12-19 10:54:52

夺命雷公狗---Smarty NO:10 foreach数组的遍历的相关文章

夺命雷公狗---Smarty NO:21 分页

在smarty里面写一个分页 demo6.php代码示例: <?php header(“Content-Type:text/html;charset=utf-8″); require “smarty/Smarty.class.php”; $smarty = new Smarty(); //连接数据库 mysql_connect(“localhost”,’root’,”); mysql_query(‘use xsphp’); mysql_query(‘set names utf8′); //读取所

夺命雷公狗---Smarty NO:17 html_table函数

功能:把简单数组转化table表格 基本语法: {html_table  loop=$data  cols=4  table_attr=’border=”0″‘} 参数说明: loop:要遍历的数组 cols:每行显示多少列 table_attr:表格的属性,多个属性之间通过空格隔开 demo6.html示例代码: <!DOCTYPE html> <html> <head> <meta charset=’utf-8′> <title></t

夺命雷公狗---Smarty NO:23 常用方法

assign :分配变量到模板文件(值传递) assignByRef:分配变量到模板文件(引用传递) assignByRef代码示例: $smarty = new Smarty(); $name = ‘lisi'; //$smarty -> assign(‘name’,$name); 值传递相当于把lisi复制一份发送到模板页 $smarty -> assignByRef(‘name’,$name);//引用传递,把$name变量的首地址赋值给模版页 $smarty -> display

夺命雷公狗---Smarty NO:18 html_checkboxes

功能:把数组转化为复选框 基本语法: {html_checkboxes name=’cust’  values=$cust_ids  checked=$customer_id  output=$cust_names  separator=”<br />”} 参数说明: name:为checkbox命名 values:为checkbox中的选项赋予value值,要求是一个数组 checked:选中的值,要求是一个数组 output:显示输出的文本值,要求是一个数组 separator:选项与选项

夺命雷公狗---Smarty NO:19 html_options函数

功能:把数组转化为option下拉选项 基本语法: <select name=customer_id> {html_options values=$cust_ids  selected=$customer_id  output=$cust_names} </select> 参数说明: output:要遍历输出的数组 values:每一个下拉选项的value值,要求是一个数组 selected:被选中的元素,要求也是一个数组 demo6.html示例代码: <!DOCTYPE

夺命雷公狗---Smarty NO:06 设计篇4 变量调节器

{$var|regex_replace:”/[\t\n]/”:””} :正则替换 {$var|replace:”aa”:”bb”} :字符替换 {$var|spacify:”^^”} :插空(在字符与字符之间插空) {$var|string_format:”%d”} :字符串格式化 %d:格式化为整数 %s :格式化字符串 {$var|strip: “*”} :去除多余的空格 {$var|strip_tags} :去除html标签 {$var|truncate:30:”…”} :截取指定长度的字

夺命雷公狗---Smarty NO:05 设计篇3 变量调节器

{$var|date_format:”%Y%m%d”} :时间格式化,%Y-%m-%d %H:%M:%S {$var|default:”value”} :当变量为空时,设置默认值 {$var|escape} :html转码 {$var|indent:10:”*”} :字符缩进 {$var|lower} :转小写 {$var|upper} :转大写 {$var|nl2br} :把\n转化为br标签 demo3.html <!DOCTYPE html> <html> <head&

夺命雷公狗---Smarty NO:24 缓存控制技术1

什么是缓存技术 IE缓存:就是把请求的数据放入IE等浏览器中(客户端缓存) HTML+CSS+JS+IMG Smarty缓存:服务器端缓存 2.服务器缓存应用 1)减少服务器I/O 2)减少数据库服务器压力 3)减少服务器访问时间,加快反应速度 编译技术  <  缓存技术  <  静态技术(不方便管理) 3.Smarty缓存机制 $smarty->setCacheDir($cache_dir); //设置缓存目录(默认为cache) $smarty->caching=true; /

夺命雷公狗---Smarty NO:11 内建函数2(sysplugins)

1.php函数 功能:可以实现在模板页面直接输入php代码 基本语法: {php} echo date(“Y-m-d”); {/php} 在Smarty3.0中已废弃,如果想使用此功能,请载入SmartyBC.class.php demo5.html示例代码: <!DOCTYPE html> <html> <head> <meta charset=’utf-8′> <title></title> </head> <b