|
![]() |
名片设计 CorelDRAW Illustrator AuotoCAD Painter 其他软件 Photoshop Fireworks Flash |
|
PEAR里的HTML_Template_IT是一个简朴而且轻易使用的类。 ********** 建立一个模板文件 **************** “符号”命名规则 为下面的正则表达式: {[0-9A-Za-z_-]+} ”块“ 格式为下面的,块名的命名规则和“符号”相同的: <!-- BEGIN 块名 --> ... 块内容 ... <!-- END 块名 --> 块答应嵌套,你必须首先设置并分析最内层的块,然后再设置和分析上一层的块。 *********** 主要方式 *********** 构造函数: void IntegratedTemplate::IntegratedTemplate ([string $root = ""]) $root = 摸板根目录 你也可以用 void IntegratedTemplate::setRoot (string $root) 方式设置模板目录;该方式不能被静态调用。 --------------------------------------------------------- 加载模板: boolean IntegratedTemplate::loadTemplatefile (string $filename, boolean [$removeUnknownVariables = TRUE], boolean [$removeEmptyBlocks = TRUE]) $filename = 模板文件名 $removeUnknownVariables = 设置是否移除未知的变量 $removeEmptyBlocks = 设置是否移除空块 成功返回TRUE,失败返回FALSE。 该方式不能被静态调用 ------------------------------------------------------- 指定当前要处理的块: boolean IntegratedTemplate::setCurrentBlock ([string $block = "__global"]) $block = 块名 成功返回TRUE,失败会返回一个PEAR_Error对象,里面包含错误 描述。该方式不能被静态调用。 ------------------------------------------------------- 用变量替换当前要处理的块里的“符号”: void IntegratedTemplate::setVariable (mixed $placeholder [, mixed $variable = ""]) $placeholder = 要替换的符号名,假如$variable是一个数组, 那就用符号名作为这个数组的索引并用这个索 引的数组元素的数据替换符号 $variable = 变量名或数组名 该函数不能被静态调用 -------------------------------------------------------- 分析当前正处理的块: void IntegratedTemplate::parseCurrentBlock () 失败会返回一个PEAR_Error对象,里面包含错误 描述。该方式不能被静态调用。 --------------------------------------------------------- 处理完成输出: void IntegratedTemplate::show ([string $block]) $block = 要返回的块 假如没设置$block,将返回完整的模板 ******************* 简朴示例(示例来自PEAR的在线手册)***** Usage Example Example 25-1. main.tpl.htm模板文件,在"./templates"目录下 <html> <table border> <!-- BEGIN row --> <tr> <!-- BEGIN cell --> <td> {DATA} </td> <!-- END cell --> </tr> <!-- END row --> </table> </html> Example 25-2. PHP脚本 <?php require_once "HTML/Template/IT.php"; $data = array ( "0" => array("Stig", "Bakken"), "1" => array("Martin", "Jansen"), "2" => array("Alexander", "Merz") ); $tpl = new HTML_Template_IT("./templates"); $tpl->loadTemplatefile("main.tpl.htm", true, true); foreach($data as $name) { foreach($name as $cell) { // Assign data to the inner block $tpl->setCurrentBlock("cell") ; $tpl->setVariable("DATA", $cell) ; $tpl->parseCurrentBlock("cell") ; } // Assign data and the inner block to the // outer block $tpl->setCurrentBlock("row") ; $tpl->parseCurrentBlock("row") ; } // 输出 $tpl->show(); ?> Example 25-3. 输出 <html> <table border> <tr> <td> Stig </td> <td> Bakken </td> </tr> <tr> <td> Martin </td> <td> Jansen </td> </tr> <tr> <td> Alexander </td> <td> Merz </td> </tr> </table> </html> ******************************************************* HTML_Template_IT里面还有一个ITX类,可以完成更加复杂的功能, 继续自IT类;ITX。PHP文件的原代码里包含了这个类的方式说明。 关于HTML_Template_IT其他方式的具体说明请参见PEAR的手册,地址为 http://pear.php.net/manual/en/package.html.html-template-it.php --希望大家能好好利用PEAR这个库写出更多更好的PHP程序!-- 返回类别: 教程 上一教程: PHP4实际应用经验篇(1) 下一教程: window.open()的所有参数列表 您可以阅读与"PEAR里HTML_Template_IT摸板类的用法"相关的教程: · PEAR::HTML_QuickForm与Smarty 的结合应用 · 开源项目PEAR程序包下载,附手册(phplib,db,phpunit...) · 类的另类用法--数据的封装 · PHP语句中or的用法 · 第十二节--类的自动加载 -- Classes and Objects in PHP5 [12] |
![]() ![]() |
快精灵印艺坊 版权所有 |
首页![]() ![]() ![]() ![]() ![]() ![]() ![]() |