网页教学网
 当前位置: 网页教学网 >> 网络编程 >> PHP编程技术 >> smarty技术学习,修改php模板的一点体会
[ HTML ] [ FW ] [ DW ] [ FP ] [ JS ] [ XML ] [ CSS ] [ 图象 ] [ FLASH ] [ .NET ] [ ASP ] [ JSP ] [ PHP ] [ 数据 ] [ 系统 ] [ 安全 ] [ 素材 ] [ 建站 ] [ 主机 ] [ 入门 ] [ 技巧 ]

smarty技术学习,修改php模板的一点体会

http://www.webjx.com  更新日期:2007-09-17 07:58  出处:网页教学网  作者:
    smarty,最得名,用之,配置语法都是菜鸟级别的,没的说,先列一点我使用的:
  
<{foreach  key=key   item=MMSPAN from=$TSortUrl}>

 <td  align="left" valign="bottom" height="25">
<{if $mysort eq $key}>
img src="images/sort_<{$key}>_1.gif"  height="25" border="0" />

<{else}>

<a href="<{$MMSPAN}>"><img src="images/sort_<{$key}>.gif"  height="25"  border="0" /></a>

<{/if}></td>

<{/foreach}>


  如果在模板中需要有动态替换的,诸如用户登陆信息,最好的是调用js

  主要的参数配置是:
include_once(IncludeFile."/libs/Smarty.class.php");
$tpl = new Smarty(); 
$tpl->caching= false;   //True开启缓存
//$tpl->compile_check=true;//确定以后不再编译模板,修改为false
$tpl->template_dir = IncludeFile . "/templates/".Isite_tpl."/"; 
$tpl->compile_dir = IncludeFile . "/templates_c/"; 
$tpl->config_dir = IncludeFile . "/configs/"; 
$tpl->cache_dir = IncludeFile . "/cache/"; 
$tpl->left_delimiter = '<{'; 
$tpl->right_delimiter = '}>'; 
/*

  
  其中,常用的2个方法template_exists($f),用于检测$f模板是否存在。fetch()用于返回已经被assign的模板的输出文件,在生成静态页面的时候很是有用。

  看看smarty自身的chm文件说明,除了基本的几个语法,就看你的灵活使用了:

   传参:
   
<{include file="SiteAllTop.html"  mysort ="0" }>


   获取系统参数:
  
<{if $MMSPAN[0] eq $smarty.get.s}>selected<{/if}>


   清除一切html格式:
<{$OReDetail[6]|strip_tags}>


   注释:
{* Smarty *}

{* include the header file here *}
{include file="header.tpl"}



  数学运算符和截取:
{$foo|truncate:"`$fooTruncCount/$barTruncFactor-1`"}


  日期格式化:
{$smarty.now|date_format}
{$smarty.now|date_format:"%A, %B %e, %Y"}
{$smarty.now|date_format:"%H:%M:%S"}
{$yesterday|date_format}
{$yesterday|date_format:"%A, %B %e, %Y"}
{$yesterday|date_format:"%H:%M:%S"}

OUTPUT:

Feb 6, 2001
Tuesday, February 6, 2001
14:33:00
Feb 5, 2001
Monday, February 5, 2001
14:33:00


  正则使用:
{* 使用空格替换每个回车,tab,和换行符 *}
{$articleTitle}
{$articleTitle|regex_replace:"/[\r\t\n]/":" "}


  格式化字符串:

{textformat wrap=40 indent=4}


  日期比较例子:
<td><{if $smarty.now|date_format:"%Y-%m-%d" eq  $MMSPAN[4]|date_format:"%Y-%m-%d"}>
<img src="images/newh.gif" />
<{/if}></td>
关键词:Smarty,PHP,模板
推荐给好友】【关闭】【收藏本文
最新五条评论
查看全部评论
评论总数 0
您的评论
用户名: 新注册) 密 码: 匿名:
·用户发表意见仅代表其个人意见,并且承担一切因发表内容引起的纠纷和责任
·本站管理人员有权在不通知用户的情况下删除不符合规定的评论信息或留做证据
·请客观的评价您所看到的资讯,提倡就事论事,杜绝漫骂和人身攻击等不文明行为