`
myfreespace
  • 浏览: 229015 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

smarty 模板设计者

阅读更多
<?php
 require_once '../config.php';
 $ary = array('one','tow','three','go','now');
 $contacts = array(array("phone" => "1", "fax" => "2", "cell" => "3"),
 array("phone" => "555-4444", "fax" => "555-3333", "cell" => "760-1234"));
 $name = "Fred";
 
 $change = 'chang myself from now';
 $smarty->assign('test','test smarty');
 $smarty->assign('ary',$ary);
 $smarty->assign('change',$change);
 $smarty->assign('contacts',$contacts);
 $smarty->assign('name',$name);
 
	$smarty->assign('cust_ids', array(1000,1001,1002,1003));
	$smarty->assign('cust_names', array('Joe Schmoe','Jack Smith','Jane Johnson','Charlie Brown'));
	$smarty->assign('customer_id', 1001);
	
	$smarty->assign('data',array(1,2,3,4,5,6,7,8,9));
	$smarty->assign('tr',array('bgcolor="yellow"','bgcolor="red"','bgcolor="green"'));
	  
 
 $smarty->display('testnew.tpl');
?>

 {%$test|replace:"test":"quize"%}{%*替换replace:a:b 把a替换为b*%}

<br/>
{%$test|capitalize%}{%*首字母大写*%}
{%$test|truncate:5:"...":true%}{%*截取字符串 多余的用...代替,...也算在截取的数量中,*%}
<br/>
{%$test|count_words%}{%*计算字符的个数*%}
<br/>
{%$smarty.now|date_format:"%Y-%m-%d %H:%M:%S"%}{%*返回时间字符串*%}
{%*单数组循环 from 要循环的数组 item 要显示的变量  中间循环的要用 $item来循环*%}
{%foreach from = $ary item = kk%}
	  name:{%$kk%}<br/>
	  {%/foreach%}
 {%*foreach 多多维数组循环*%}
 {%foreach name=outer item=contact from=$contacts%}
 {%foreach key=key item=item from=$contact%}
	 {%$key%}: {%$item%}<br>
 {%/foreach%}
{%/foreach%}
  {%*内建函数*%}
{%capture name="haha"%}{%*把接受的值存储在变量haha中而不是显示在页面上,多用于加载模板可以通过*%}
 {%include file="header.tpl"%}
 {%$test%}
{%/capture%}
{%*$smarty.capture.haha*%}
{%if $name eq "Fred"%}
	Welcome Sir.
{%elseif $name eq "Wilma"%}
	Welcome Ma'am.
{%else%}
	Welcome, whatever you are.
{%/if%}
{%*php%}
 echo "php mark";
{%/php*%}
<br/>
{%*自定义函数assgin为模板变量赋值,*%}
{%counter start=0 skip=4 direction=down print=false%}{%*用于计数 start 为开始的位置 skip 为跳值,up down 为方向print为是否输出值*%}

{%counter%}<br>
{%counter%}<br>
{%counter%}<br>
{%counter%}<br>
<table>
{%foreach from = $ary item = kk%}
	<tr bgcolor="{%cycle values="#363636,#567342,red"%}"><td>{%$kk%}</td></tr>
	  {%/foreach%}
</table>
{%*html_checkboses根据给定的数值组成复选框按钮,values复选框的值,check选择的 output显示的值*%}
{%html_checkboxes name = id values=$cust_ids checked=$customer_id output=$cust_names separator="<br />"%}
<select name=customer_id>
{%*下拉菜单*%}
	{%html_options values=$cust_ids selected=$customer_id output=$cust_names%}
</select><br/>
{%*htm_radios 单选按钮*%}
{%html_radios values=$cust_ids checked=$customer_id output=$cust_names separator="<br />"%}<br/>
{%html_select_date%}{%*显示年月日*%}<br/>
{%html_select_time%}<br/>
{%html_table loop=$data cols=4 tr_attr=$tr table_attr='border="0"'%}<br/>
{%mailto address="me@domain.com" subject="Hello to you!"%}{%*对电子邮件进行编码*%}<br/>
{%popup_init src="/javascripts/overlib.js"%}
<A href="mypage.html" {%popup text="This link takes you to my page!"%}>mypage</A>




 
0
2
分享到:
评论
1 楼 vb2005xu 2010-06-02  
不知道你认为这样的模板看起来很清爽 还是原生代码舒服?
<table width="100%" align="center" border="0" cellspacing="0" cellpadding="0">
<?php web_control('hidden','menu[type]',array('value' => $menu['type']));?>
<?php
	$menu_options = array(
		'menu[name]' => array(
			'ctl'=>'textbox','text'=>'菜单名称',
			'params'=>array('size' => 35,'value'=>(isset($menu['name'])?$menu['name']:null),'class'=>"formfield"),
			'notice_caption' => ' (说明: 菜单的显示文本) *' ,
			'error_caption' => ''
		),
		'menu[udi]' => array(
			'ctl'=>'textbox','text'=>'UDI标识',
			'params'=>array('size' => 35,'value'=>(isset($menu['udi'])?$menu['udi']:null),'class'=>"formfield"),
			'notice_caption' => ' (格式: namespace::controller/action@module) *' ,
			'error_caption' => ''
		),
		'menu[displayorder]' => array(
			'ctl'=>'textbox','text'=>'显示次序',
			'params'=>array('size' => 35,'value'=>(isset($menu['displayorder'])?$menu['displayorder']:0),'class'=>"formfield",'maxLength'=>2),
			'notice_caption' => ' (格式: 小于16的整数,默认为0)' ,
			'error_caption' => ''
		),
	);
?>

<?php if (!empty($menu_options)): ?>

<?php foreach ($menu_options as $option=>$values) :?>
<tr class="tablecell">
   <td><?php echo htmlspecialchars("{$values['text']}: "); ?></td>	
   <td>
   <?php		
		web_control($values['ctl'],$option,$values['params']);
   		web_control('label',null,array('caption'=>$values['notice_caption'],'class'=>'yes'));
   		web_control('label',"{$option}_error",array('caption'=>$values['error_caption'],'class'=>'no')); 
   	?>
   </td>
</tr>	
<?php endforeach?>

<tr class="tablecell">
    <td colspan="2" align="center">
    <input type="submit" value="提交" class="formbutton">
    <input type="reset" value="重置" class="formbutton"></td>
</tr>

<?php endif; ?>
</table>

相关推荐

    phpSmarty模板中文手册

    一、Smarty模板设计者篇 对于模板设计者来说,Smarty提供了强大的模板语言,允许设计者使用类似于HTML的语法来创建界面。主要知识点包括: 1. **模板语法**:了解Smarty的控制结构,如`{if}`、`{foreach}`等,以及...

    Smarty模板包下载

    在这个"Smarty模板包下载"中,我们看到的是Smarty 2.6.18版本。 Smarty 2.6.18是一个较早的版本,发布于Smarty的历史发展中。尽管如此,它依然包含了许多关键功能和特性,如: 1. **模板语法**:Smarty提供了一套...

    smarty模板,调用静态页面模板,Smarty-2.6.22

    5. **模板语法**:在Smarty模板文件中,你可以使用特定的语法来控制逻辑,如`{if}`、`{foreach}`、`{include}`等。例如,包含其他部分模板: ```html {include file='header.tpl'} &lt;!-- 其他HTML内容 --&gt; {...

    smarty 模板 php模板

    Smarty是一个php模板引擎。更准确的说,它分开了逻辑程序和外在的内容,提供了一种易于管理的方法。可以描述为应用程序员和美工...因此,程序员可以改变逻辑而不需要重新构建模板,模板设计者可以改变模板而不影响到逻辑。

    PHP Smarty 模板引擎手册 CHM.rar

    这个CHM手册是学习和掌握Smarty模板引擎的宝贵资源,无论你是初学者还是有经验的开发者,都能从中获得有益的知识。通过深入学习和实践,你将能够更好地利用Smarty提升PHP应用的用户体验和开发效率。

    2014年辛星PHP教程秋季版之Smarty模板.pdf )

    综上所述,这部分内容深入地介绍了模板技术的基本概念和使用方法,并以Smarty模板引擎作为实例,让学习者能够理解模板技术的实际应用场景。同时,辛星积极的态度和对编程教育的承诺也鼓励了学习者在学习过程中积极...

    Smarty2.6.14docs

    #### 二、Smarty模板设计者指南 ##### 2.1 基本语法 **注释**:使用`{* *}`包围的文本将被视为注释,不会被渲染到最终页面。 **变量**:Smarty允许在模板中直接使用变量,如`{$var}`,这些变量在PHP脚本中赋值。 ...

    传智韩顺平老师《全面掌握smarty模板技术》 韩顺平smarty笔记、源码、ppt、工具等

    本资源包由知名IT教育专家韩顺平老师提供,包含了他在讲解《全面掌握Smarty模板技术》课程时所用的笔记、源代码、PPT以及相关工具,旨在帮助学习者深入理解和运用Smarty。 首先,让我们详细了解一下Smarty的核心...

    PHP 开发 典型模块大全 smarty模板

    这个“PHP开发典型模块大全 Smarty模板”压缩包文件很可能是包含了一系列示例或者教程,帮助学习者理解和掌握如何在实际项目中使用Smarty。 Smarty的核心概念是模板、变量、控件结构和函数。以下是对这些关键知识点...

    Smarty模板使用教程chm格式的

    这个"Smarty模板使用教程chm格式的"文件很可能是对Smarty模板引擎的一个详细指南,帮助用户理解和掌握其核心功能和用法。 Smarty的主要特点包括: 1. **模板语法**:Smarty提供了自己的模板语言,例如`{foreach}`...

    Smarty模板引擎 v4.3.5.zip

    1. **模板分离**:Smarty的核心理念是将网页设计者的HTML代码与程序员的PHP代码分开,使得设计师可以专注于页面布局和样式,而开发者可以专注于业务逻辑。通过定义特殊的标记,如`{foreach}`、`{if}`等,实现PHP代码...

    李炎恢Smarty专题精讲视频课程源码

    通过这门课程,你将能够深入理解并熟练运用Smarty模板引擎。 首先,我们来了解一下Smarty的核心概念: 1. **模板(Template)**:这是由设计师创建的HTML文件,其中包含了一些特殊的Smarty标记。这些标记用于插入...

    一个简单的smarty模板做的cms

    在这个“一个简单的smarty模板做的cms”项目中,我们可以学习到如何利用Smarty来构建一个内容管理系统(CMS),这对于初学者来说是一个很好的实践平台。 首先,Smarty的核心理念是“分离关注点”,它让程序员使用...

    smarty模板数学运算示例

    例如,本站推荐的《smarty模板入门基础教程》可以作为初学者的启蒙教材,而对于想要掌握更多PHP开发技巧的读者,《PHP模板技术总结》、《PHP基于pdo操作数据库技巧总结》等文章则提供了丰富的技术细节和实际应用场景...

    Smarty模板程序

    Smarty模板程序是一款广泛应用于PHP...对于初学者,理解这些基本概念和操作流程是至关重要的,通过实践可以更快地掌握Smarty模板引擎的使用。在开发过程中,可以参考Smarty的官方文档,了解更深入的功能和最佳实践。

    php MVC开发模式及smarty模板介绍

    ### PHP MVC开发模式及Smarty模板介绍 #### 一、MVC开发模式概述 ...通过上述内容的学习,初学者可以更好地理解PHP MVC开发模式及Smarty模板的工作原理和应用场景,为进一步深入研究和实际开发打下坚实的基础。

    Smarty 一个php模板引擎

    Smarty是一个php模板引擎。更准确的说,它分开了逻辑程序和外在的内容,提供了一种易于管理的方法。可以描述为应用程序员和美工...因此,程序员可以改变逻辑而不需要重新构建模板,模板设计者可以改变模板而不影响到逻辑。

    classSmarty2.6.18PHP模板Smarty2.6.18.rar

    Smarty是PHP世界中一款著名的模板引擎,它的出现旨在将HTML模板和PHP代码分离,从而让开发者和设计者能够更高效地协作。Smarty2.6.18是该框架的一个特定版本,它在早期PHP开发中广泛应用,提供了丰富的功能和优化。 ...

    smarty-中文文档

    Smarty是一个php模板引擎。更准确的说,它分开了逻辑程序和外在的内容,提供了一种易于管理的方法。可以描述为应用程序员和美工...因此,程序员可以改变逻辑而不需要重新构建模板,模板设计者可以改变模板而不影响到逻辑。

    (第27讲) PHP模板引擎Smarty入门使用

    - **学习曲线**:对于初学者,Smarty的学习成本相对较高,需要理解其模板语法和配置方式。 - **性能影响**:虽然有缓存机制,但相比直接在PHP中渲染HTML,可能存在一定的性能损耗。 - **更新维护**:随着PHP框架的...

Global site tag (gtag.js) - Google Analytics