Template($root = ".", $unknowns = "remove") 构造函数:root为存放模版文件的目录,默认为根目录 unknowns为对未知变量的处理方法,remove为删除模版中未知变量,keep为保留模版中的未知变量,comment为把未知变量转换为HTML注释,默认为remove。
set_root($root) 效验所给参数root是否为目录,如果是则把该目录设置为摸版文件放置的目录。
set_unknowns($unknowns = "keep") 设置对未知变量的处理方式
set_file($handle, $filename = "") 为每个模版文件定义初始化一个变量,在以后的处理中用该变量代替该模版文件。 函数调用参数可以为成对的handle/filename或是由下标为handle值为filename的数组
set_block($parent, $handle, $name = "") 参数parent中包含了由参数handle的值命名的块,该函数将该块删除并用参数name中的值生成新的模版块变量代替,同时设置handle只包含原块中的模版变量,如果name变量省略则认为该块和handle相同。 例: 在box模版中包含row块: <!-- start box.ihtml --> <table border=1 bgcolor="#cccccc" cellpadding=4 cellspacing=0> <tr> <td colspan=2><b>{TITLE}</b></td> </tr> <!-- BEGIN row --> <tr> <td>{NUM}</td> <td>{BIGNUM}</td> </tr> <!-- END row --> </table> <!-- end box.ihtml --> 执行 $t->set_block("box", "row", "rows")后box变为: <!-- start box.ihtml --> <table border=1 bgcolor="#cccccc" cellpadding=4 cellspacing=0> <tr> <td colspan=2><b>{TITLE}</b></td> </tr> {rows} </table> <!-- end box.ihtml --> row变为:{NUM} {BIGNUM}
set_var($varname, $value = "") 设置模版变量的值,生成以模版变量名为键的数组,参数可以是成对的模版变量名+值对或是下标为$varname的数组
subst($handle) 模版变量置换函数,参数handle为包含要置换模版的句柄。函数总是先尝试加载handle表示的模版文件,在已经加载的情况下进行handle所包含的模版变量的置换。
psubst($handle) 调用subst函数并打印出结果
parse($target, $handle, $append = false) 该函数调用subst函数对handle模版句柄中的全部变量进行置换,并保存或添加到以target为句柄的模版变量中,参数append控制是仅保存还是添加到target中
pparse($target, $handle, $append = false) 调用parse函数并打印出结果。
get_vars() 返回所有定义了的模版句柄变量和值,实际上是遍历类的成员变量varkeys,varvals这两个数组最后返回以varkeys的值为键,varvals的值为值的数组
get_var($varname) 读取以varname为名的模版变量,参数varname可以为数组,则返回的是数字索引的模版变量数组
get_undefined($handle) 返回handle模版中没有被处理的模版变量
finish($str) 根据成员变量unknowns对传入的字符串中的未处理变量进行处理,生成输出前的可选项。
p($varname) 打印调用finish函数后的字符串
get($varname) 返回经调用finish()函数处理的由get_var($varname)取得的模版字符串
haltmsg($msg) 打印出错信息
Internal instance methods//内部方法
filename($filename) 返回模版文件filename的绝对路径,并检查文件是否存在。
varname($varname)
loadfile($handle) 装载模版文件,如handle为句柄的模版变量没有被设置则其所在的文件将被加载,同时设置该模版变量。
halt($msg) 发生错误时停止运行,显示出错信息。

|