当前位置: 首页 > 图文教程 > 网络编程 > PHP > PHP.MVC的模板标签系统(五)

PHP
PHP技巧:详解phplib模板使用过程及运行原理
PHP技巧:Smarty+adodb分页示例
PHP技巧:PHP脚本中关于拼写检查函数库
PHP技巧:PHP脚本编程中的文件系统函数库
PHP技巧:PHP中几种删除目录的三种方法
学习PHP技术:txtSQL安装手册中文版
学习PHP:PHP的通用检测函数总结
详细学习PHP中对文件和目录的操作方法
PHP+MYSQL实例:网站在线人数的程序代码
Linux操作系统启动httpd失败的解决方法
初学:在PHP开发中如何使用Session?
PHP初学者遇到的中文乱码解决方案
PHP实例:实现文件上传的程序源码
PHP实例:常用的数值判断函数
PHP实例源代码:PHP实现翻页处理的类
PHP实例:从数组里筛选出重复的数据
PHP实例:用PHP实现windows风格的树型菜单
PHP实例程序:实现给上传图片加水印图案的做法
PHP实例:用PHP编写的网上调查投票系统
PHP实例:一个非常全面获取图象信息的PHP函数

PHP.MVC的模板标签系统(五)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 48 ::
收藏到网摘: n/a

建立模板标签系统应用程序

建立模板标签系统应用程序只需几个步骤.
注意:以下步骤假设使用了新的SleeK例子应用程序(这个例子可以在www.phpmvc.net上找到).

修改应用程序的boot.ini文件

应用程序的boot.ini文件包含需要得到PHP.MVC框架的信息.boot.ini文件通常位于应用程序的"WEB-INF"目录下.为了设置应用程序使用模板标签类,我们需要在boot.ini文件中定义一些属性.

TagActionDispatcher类

TagActionDispatcher是ActionDispatcher类的标准实现.为了让框架能读取TagActionDispatcher类,我们为变量$appServerRootDir设置值为'TagActionDispatcher':
// Setup the application specific ActionDispatcher (RequestDispatcher)
$actionDispatcher = 'TagActionDispatcher';

模板标签系统库根目录

我们也需要设置路径指向我们的PHP.MVC库(需要文件系统的绝对路径):
// Set php.MVC library root directory (no trailing slash).
$appServerRootDir = 'C:\WWW\phpmvc-base';

可选设置

应用程序定时器可以使用$timerRun属性来设置开或关:
// Timer reporting. 1=on, 0=off
$timerRun = 1;
还可以指导框架总是(强制)编译应用程序phpmvc-config.xml配置类(最好用在开发阶段,因为会比较慢),我们使用:
// The application XML configuration data set:
$appXmlCfgs = array();
$appXmlCfgs['config'] = array('name'=>'phpmvc-config.xml', 'fc'=>True);
或者仅在phpmvc-config.xml文件被修改的时候重新编译应用程序配置文件(在开发完成后使用此项设置,速度快),我们使用:
// The application XML configuration data set:
$appXmlCfgs = array();
$appXmlCfgs['config'] = array('name'=>'phpmvc-config.xml', 'fc'=>False);

设置应用程序模板目录

当为模板标签应用程序设置模板目录时,我们需要去创建一个目录(和子目录),放置我们的应用程序模板文件.这个目录必须被命名为在View资源配置类的$tplDir属性所定义的值,默认是'./WEB-INF/tpl'.比如:例子应用程序有一个模板目录结构设置像这样:
- PhpMVC-Tags
Index.html
Main.php
WEB-INF
tpl
pageFooter.ssp
pageHeader.ssp
salePageBody.ssp
sale
pageContent.ssp
我们也需要去创建目录放置编译的页面.这个目录必须被命名为在View资源配置类的$tplDirC属性所定义的值.默认是'./WEB-INF/tpl_C'.例子应用程序有一个模板目录结构设置像这样:
PhpMVC-Tags
Index.html
Main.php
WEB-INF
tpl
...
sale
...
tpl_C
pageFooter.sspC
pageHeader.sspC
salePageBody.sspC
sale
pageContent.sspC
注意我们也需要在'./WEB-INF/tpl_C'下创建sale目录.

设置PHP.MVC库的路径和包含

检查以下路径设置已经被定义在GlobalPaths.php和globalPrepend.php文件在你的框架安装目录下的"/WEB-INF"目录下:
GlobalPaths.php
------------------------------------------------
$appDirs[] = 'WEB-INF/lib/phpmvc_tags';

globalPrepend.php
------------------------------------------------
include_once 'PhpMVC_Tags.php';
如果他们没有在添加到路径里,那么就定义这些变量.

安装PHP.MVC库

下载最新版的PHP.MVC库:http://www.phpmvc.net/download/cvsIdx.php?doc=cvs-snaps
解压库文档到一个目录.修改上面所描述过的路径设置和包含设置.

运行例子应用程序

下载例子应用程序.完整的例子代码文件和这个向导都能在这里下载:http://www.phpmvc.net/download/rel/phpmvc-tags-v1.0.zip
解压到web服务器目录中.可能像这样:C:/WWW/PhpMVC-Tags
修改应用程序和框架设置.
为了测试例子程序,需要浏览器例子程序的首页:http://localhost/PhpMVC-Tags/Index.html


附录A:ViewResources配置类

ViewResourcesConfig类表现了<view-resource>元素的配置信息.
下表列出了ViewResourcesConfig类的属性,条目描述和默认值:

Name Description Default Value
$appTitle The application title 'My Web Application'
$appVersion The application version '1.0'
$copyright The copyright notice 'Copyright C YYYY My Name. All rights reserved.'
$contactInfo The contact information '[email protected]'
$processTags Do we run the template engine processor (boolean) False
$compileAll Force compile pages (boolean) False
$tagL The left tag identifier '<@'
$tagR The right tag identifier '@>'
$tplDir The view resource templates directory './WEB-INF/tpl'
$tplDirC The compiled templates directory './WEB-INF/tpl_C'
$extC The compiled file notation. Eg: "pageContent.ssp[C]" 'C'
$maxFileLength The maximum size of the template files allowed, in bytes (integer) 250000
$tagFlagStr Indicates tag template file(s) to be pre-processed. Eg: "myPage.ssp" '.ssp'
$tagFlagCnt The number of trailing filename characters to sample (".ssp" = -4) -4