Chinaunix首页 | 论坛 | 博客
  • 博客访问: 16501761
  • 博文数量: 5645
  • 博客积分: 9880
  • 博客等级: 中将
  • 技术积分: 68081
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-28 13:35
文章分类

全部博文(5645)

文章存档

2008年(5645)

我的朋友

分类:

2008-04-28 21:11:24

下载本文示例代码
  综述: ??在多人开发大型PHP项目时,模板技术非常有用,它可以分开美工和程序员的工作,并且方便界面的修改和完善;不仅如此,利用模板技术,我们还可以简单有效地定制或者修改站点。现在我们将要以PHPLIB的模板为例子讲述如何在PHP中应用模板技术。   如何使用PHPLIB模板? ??设我们有一个模板, 名为UserTemp,路径为/home/user_dir/user_temp/,它的内容如下: ??你订购的是:{Product} ??大括号表示Product是一个模板变量。 ??然后我们编写如下的程序: <?phpinclude "template.inc"; $user_product = "随身听"; $tmp = new Template("/home/user_dir/user_temp/"); // 创建一个名为 $t 的模板对象 $tmp->set_file("FileHandle","UserTemp.ihtml"); // 设置句柄FileHandle = 模板文件 $tmp->set_var("Product",$user_product); // 设置模板变量Product=$user_product$tmp->parse("Output","FileHandle"); // 设置模板变量 Output = 分析后的文件 $tmp->p("Output"); // 输出 Output 的值(我们的分析后的数据) ?>??template.inc是PHPLIB中的一个文件,我们用include以便使用PHPLIB的模板功能。PHPLIB模板使用的是面向对象的设计,所以我们可以用$tmp = new Template("/home/user_dir/user_temp/")创建一个模板对象,其参数是一个路径("/home/user_dir/user_temp/"), 用来设置模板文件所在位置,默认路径是PHP脚本所在目录。 ??set_file()用来定义指向UserTemp.ihtml(PHPLIB模板的模板文件名的后缀为.ihtml )的句柄"FileHandle",set_var()用来设置模板变量Product为$user_product的值(即"随身听"),parse()方法会装入FileHandle(即UserTemp.ihtml)进行分析,将所有在模板中出现的"{Product}"替换成$user_product的值("随身听")。   如何使用嵌套的模板? ??在上面的例子中,parse()方法设置的"Output"是一个模板变量,利用这点,我们可以实现模板的嵌套。 ??比如,我们有另外一个模板(假设为UserTemp2),其内容是: ??欢迎你,亲爱的朋友!{Output} ??那么在分析之后,其输出会是: ??欢迎你,亲爱的朋友!你订购的是:随身听 ??下面是更新后的程序: <?php include "template.inc"; $user_product = "随身听"; $tmp = new Template("/home/user_dir/user_temp/"); $tmp->set_file("FileHandle","UserTemp.ihtml");$tmp->set_var("Product",$user_product);$tmp->parse("Output","FileHandle"); $tmp->set_file("FileHandle2","UserTemp2.ihtml");//设置第二个模板句柄$tmp->parse("Output","FileHandle2");//分析第二个模板$tmp->p("Output");?> ??很简单,我们就不详细解释了。这里有一个技巧:parse()和p()可以写成一个函数pparse(),比如$tmp->pparse(Output","FileHandle2)。 共2页。 1 2 :   综述: ??在多人开发大型PHP项目时,模板技术非常有用,它可以分开美工和程序员的工作,并且方便界面的修改和完善;不仅如此,利用模板技术,我们还可以简单有效地定制或者修改站点。现在我们将要以PHPLIB的模板为例子讲述如何在PHP中应用模板技术。   如何使用PHPLIB模板? ??设我们有一个模板, 名为UserTemp,路径为/home/user_dir/user_temp/,它的内容如下: ??你订购的是:{Product} ??大括号表示Product是一个模板变量。 ??然后我们编写如下的程序: <?phpinclude "template.inc"; $user_product = "随身听"; $tmp = new Template("/home/user_dir/user_temp/"); // 创建一个名为 $t 的模板对象 $tmp->set_file("FileHandle","UserTemp.ihtml"); // 设置句柄FileHandle = 模板文件 $tmp->set_var("Product",$user_product); // 设置模板变量Product=$user_product$tmp->parse("Output","FileHandle"); // 设置模板变量 Output = 分析后的文件 $tmp->p("Output"); // 输出 Output 的值(我们的分析后的数据) ?>??template.inc是PHPLIB中的一个文件,我们用include以便使用PHPLIB的模板功能。PHPLIB模板使用的是面向对象的设计,所以我们可以用$tmp = new Template("/home/user_dir/user_temp/")创建一个模板对象,其参数是一个路径("/home/user_dir/user_temp/"), 用来设置模板文件所在位置,默认路径是PHP脚本所在目录。 ??set_file()用来定义指向UserTemp.ihtml(PHPLIB模板的模板文件名的后缀为.ihtml )的句柄"FileHandle",set_var()用来设置模板变量Product为$user_product的值(即"随身听"),parse()方法会装入FileHandle(即UserTemp.ihtml)进行分析,将所有在模板中出现的"{Product}"替换成$user_product的值("随身听")。   如何使用嵌套的模板? ??在上面的例子中,parse()方法设置的"Output"是一个模板变量,利用这点,我们可以实现模板的嵌套。 ??比如,我们有另外一个模板(假设为UserTemp2),其内容是: ??欢迎你,亲爱的朋友!{Output} ??那么在分析之后,其输出会是: ??欢迎你,亲爱的朋友!你订购的是:随身听 ??下面是更新后的程序: <?php include "template.inc"; $user_product = "随身听"; $tmp = new Template("/home/user_dir/user_temp/"); $tmp->set_file("FileHandle","UserTemp.ihtml");$tmp->set_var("Product",$user_product);$tmp->parse("Output","FileHandle"); $tmp->set_file("FileHandle2","UserTemp2.ihtml");//设置第二个模板句柄$tmp->parse("Output","FileHandle2");//分析第二个模板$tmp->p("Output");?> ??很简单,我们就不详细解释了。这里有一个技巧:parse()和p()可以写成一个函数pparse(),比如$tmp->pparse(Output","FileHandle2)。 共2页。 1 2 : 下载本文示例代码


PHP中的模板技术PHP中的模板技术PHP中的模板技术PHP中的模板技术PHP中的模板技术PHP中的模板技术PHP中的模板技术PHP中的模板技术PHP中的模板技术PHP中的模板技术PHP中的模板技术PHP中的模板技术PHP中的模板技术PHP中的模板技术PHP中的模板技术
阅读(82) | 评论(0) | 转发(0) |
0

上一篇:PHP中的Java扩展

下一篇:PHP的面向对象编程

给主人留下些什么吧!~~