接Smarty中的自定义函数(一)
7、html_checkboxes
复选框
$ssss1 = array(2,3,4);
$ssss2 = array('学习','工作','生活');
$ssss3 = array(2,4);
$smarty->assign('ssss1',$ssss1);
$smarty->assign('ssss2',$ssss2);
$smarty->assign('ssss3',$ssss3);
$suse = array(
0 => '学习',
1 => '工作',
2 => '生活',
);
$smarty->assign('suse',$suse);
$smarty->display('html_checkboxes.html');
html_checkboxes.html
<{*
name,checkbox的name属性
values,checkbox中的value
output,checkbox中的显示字符
selected,已选定的元素
separator,checkbox之间的分隔符
labels,是否有<label>标签,默认为true
*}>
<{html_checkboxes name=ssss values=$ssss1 output=$ssss2 selected=$ssss3 separator="<br>"}>
<{*解析后的html代码
<label><input type="checkbox" name="ssss[]" value="2" checked="checked" />学习</label><br>
<label><input type="checkbox" name="ssss[]" value="3" />工作</label><br>
<label><input type="checkbox" name="ssss[]" value="4" checked="checked" />生活</label><br>
*}>
<br>
<{*
name,checkbox的name属性
selected,已选定的元素
options,包含值和显示的数组,可以是关联数组、也可以是数值数组
解析后的value=数组的下标,显示的字符为数组下标对应的值
separator,checkbox之间的分隔符
labels,是否有<label>标签,默认为true
*}>
<{html_checkboxes name=suse options=$suse separtator=" "}>
<{* 解析后的html代码
<label><input type="checkbox" name="suse[]" value="0" separtator=" " />学习</label>
<label><input type="checkbox" name="suse[]" value="1" separtator=" " />工作</label>
<label><input type="checkbox" name="suse[]" value="2" separtator=" " />生活</label>
*}>
运行结果:

8、html_image
用于显示图片
<{*
file,必选,文件的位置以调用这个模板文件的PHP文件位置为准
border,图片边框
height,图片的高度
width,图片的宽度
basedir,图片文件的相对路径
alt,图片的描述信息
href,图片的链接地址
*}>
<{html_image file="./image/1.jpg" border="3" height="90" width="200" alt="搜狗五笔" href="http://www.sougou.com"}>
<{*
解析后的html代码
<a href="http://www.sougou.com"><img src="./image/1.jpg" alt="搜狗五笔" width="200" height="90" border="3" /></a>
*}>
运行结果:

9、html_options
下拉列表框
$ssss1 = array(2,3,4,5);
$ssss2 = array('学习','工作','生活');
$ssss3 = array(2);
$smarty->assign('ssss1',$ssss1);
$smarty->assign('ssss2',$ssss2);
$smarty->assign('ssss3',$ssss3);
$suse = array(
5 => '学习',
6 => '工作',
7 => '生活',
);
$smarty->assign('suse',$suse);
$smarty->display('html_options.html');
html_options.html
<{*
values,下拉列表框中option的value值
output,下拉列表框中option对应显示的字符
selected,已选定的元素
name,select的name值,
如果没有指定name属性,则只会产生<option>,没有<select></select>标签,
即不会显示在页面上,但是是源代码中会有<option>
注:
如果output的元素比values的元素多,则下拉列表框的option个数以values的元素个数为准
如果values的元素比output的元素多,则多余的option有value值,但显示为空
*}>
<{html_options values=$ssss1 output=$ssss2 selected=$ssss3 name=ssss}>
<{*
解析后的html代码
<select name="ssss">
<option label="学习" value="2" selected="selected">学习</option>
<option label="工作" value="3">工作</option>
<option label="生活" value="4">生活</option>
<option label="" value="5"></option>
</select>
*}>
<{*
options,包含options的value和对应显示的字符的数组
*}>
<{html_options options=$suse name=suse}>
<{*
解析后的html代码
<select name="suse">
<option label="学习" value="5">学习</option>
<option label="工作" value="6">工作</option>
<option label="生活" value="7">生活</option>
</select>
*}>
运行结果:

10、html_radios
单选框
html_radios.php
$ssss1 = array(2,3,4,5);
$ssss2 = array('学习','工作','生活');
$ssss3 = 2;//单选框的checked不能为数组
$smarty->assign('ssss1',$ssss1);
$smarty->assign('ssss2',$ssss2);
$smarty->assign('ssss3',$ssss3);
$suse = array(
5 => '学习',
6 => '工作',
7 => '生活',
);
$smarty->assign('suse',$suse);
$smarty->display('html_radios.html');
html_radios.html
<{*
values,单选框input type="radio"的value值
output,单选框对应显示的字符
checked,已选定的元素,不能为数组
name,input type="radio"的name值,默认为radio
separator,每个radio的分隔符
注:
如果output的元素比values的元素多,则单选框的option个数以values的元素个数为准
如果values的元素比output的元素多,则多余的radio有value值,但显示为空
*}>
<{html_radios values=$ssss1 output=$ssss2 checked=$ssss3 name=ssss separator="<br>"}>
<{*
解析后的html代码
<label><input type="radio" name="ssss" value="2" checked="checked" />学习</label><br>
<label><input type="radio" name="ssss" value="3" />工作</label><br>
<label><input type="radio" name="ssss" value="4" />生活</label><br>
<label><input type="radio" name="ssss" value="5" /></label><br>
*}>
<br>
<{*
options,包含radio的value和对应显示的字符的数组
*}>
<{html_radios options=$suse name=suse}>
<{*
解析后的html代码
<label><input type="radio" name="suse" value="5" />学习</label>
<label><input type="radio" name="suse" value="6" />工作</label>
<label><input type="radio" name="suse" value="7" />生活</label>
*}>
运行结果:
