background image

 

服务器上,请确保 teamplates_c 里定义的这个目录具有可写可读权限,默认情况下它的 
编译目录是当前目录下的 templates_c

 

,出于同样的理由我们将其明确的写出来。   

(6

 

)分隔符 $smarty->left_delimiter 与$smarty->right_delimiter: 

  指明在查找模板变量时的左右分割符。默认情况下为"{"与"}",但在实际中因为我们

 

要 在模板中使用<script>,Script 中的函数定义难免会使用{},虽然它有自己的解决办法,
但习惯上我们将它重新定义为"{#"与"#}"或是"<!--{"与"}-->"或其它标志符,注意,如果
在这里定义了左右分割符后,在模板文件中相应的要使每一个变量使用与定义相同的符

 

号, 例如在这里指定为"<{"与"}>",html 模板中也要相应的将{$name}变成<{$name}>, 这

 

样程序才可以正确的找到模板变量。   
(7)$smarty->cache="./cache": 
  告诉 Smarty 输出的模板文件缓存的位置。上一篇我们知道 Smarty 最大的优点在于它 
可以缓存,这里就是设置缓存的目录。默认情况下为当前目录下的 cache 目录,与 
templates_c 目录相当,在 linux

 

系统中,我们要确保它的可读可写性。   

(8)$smarty->cache_lifetime = 60 * 60 * 24:   
  这里将以秒为单位进行计算缓存有效的时间。第一次缓存时间到期时当 Smarty 的 
caching 变量设置为 true 时缓存将被重建。当它的取值为-1 时表示建立起的缓存从不过期
 为 0

 

时表示在程序每次执行时缓 存总是被重新建立。上面的设置表示将 cache_lifetime 设

 

置为一天。   
(9)$smarty->caching = 1:   
  这个属性告诉 Smarty 是否要进行缓存以及缓存的方式。
  它可以取 3 个值,0  

: Smarty 默认值,表示不对模板进行缓存;1:表示 Smarty 将使

 

用当前定义的 cache_lifetime 来决定是否结束 cache;2

 

:表示 Smarty 将使用在 cache 被建

 

立时使用 cache_lifetime 这个值。习惯上使用 true 与 false

 

来表示是否进行缓存。   

(10)$smarty->assign("name", $username)  

  该数的原型为 assign(string varname, mixed var),varname 为模板中使用的模板变量,var
指出要将模板变量替换的变量名;其第二种原形为 assign(mixed var),我们要在后面的例
子详细的讲解这个成员函数的使用方法,assign 是 Smarty

 

的核心函数之一, 所有对模板

 

变量的替换都要使用它。   
(11)$smarty->display("index.tpl"):   
  该函数原形为 display(string varname),

 

作用为显示一个模板。简单的讲,它将分析 处理

过的模板显示出来,这里的模板文件不用加路径,只要使用一个文件名就可以了,它路  

 

径我们已 经在$smarty->templates(string path)

 

中定义过了。   

程序执行完后我们可以打开当前目录下的 templates_c 与 cache

 

目录,就会发现在下 边多

出一些%%的目录,这些目录就是 Smarty

 

的编译与缓存目录,它由程序自动生成,不 要

 

直接对这些生成的文件进行修改。   
以上我简单的把 Smarty 程序中的一些常用的基本元素介绍了一下,在后边的例子中你可
以看到将它们将被多次的使用。