• 4843阅读
  • 0回复

[PHP]在PHP中使用模板和WebService,架构多层分布式应用 [复制链接]

上一主题 下一主题
离线XChinux
 

只看楼主 倒序阅读 楼主  发表于: 2005-07-30
  以前一直考虑该不该用模板技术,昨天在网上无意中看到一篇文章,是介绍Smarty模板库的,说是PHP的官方模板库,而且以前也在群里听人说过 Smarty的好处,就干脆找了Smarty看了一下,嗯,还不错,如果它作为PHP的官方模板库,那肯定要支持喽(对比的是PRADO,我真的希望它能成为PHP的官方快速开发模型,这样就会得到更多的支持,用起来也不怕以后它会消失),Smarty的一个比较吸引人的地方,一个是模板只编译一次,以后除非页面发生变化,不会再编译,而编译过的模板文件,其实和我们直接在模板文件中使用PHP语言是一样地,也很高效,另一个问题是,Smarty有个选项,能够打开Cache功能,自动生成静态页面,并设定过期时间,这样,在页面中加入控制语句,如果Cache中有静态页面的话,那么就直接输出静态页面,而不用再进行数据处理,这样速度会快很多的。倒是省得自己动手写生存静态页面的功能了。Smarty的模板标签的支持远比PHPLIB Template和FastTemplate丰富,还可以在模板文件中直接使用PHP代码,当然,这个功能可以关闭,因为模板可能并不是自己做的,而在模板中如果允许使用PHP代码的话,那么就可能出现安全问题,从而非法访问或修改变量。这个控制很不错的。想使用Smarty可以到官方网站下载使用: http://smarty.php.net
  这里还要说的是WebService问题,因为ASP.NET和Java都支持WebService并且使用和搭建也比较的方便,可以用作分布式开发,那么PHP能不能呢?答案是肯定的。在PHP5以前,PHP本身没有WebService支持,需要使用第三方库才能实现。比如NuSoap。但在 PHP5 中,加入了官方的Soap库,是用C写的,用它可以支持用Soap建立WebService和连接WebService,很不错的功能。
  至此,Smarty模板技术,加上Soap的WebService技术支持,PHP5也可以开发多层分布式应用了。让MVC模式开发更加顺手。再加上其跨平台和开源的特性,其将不会退出与ASP.NET,JSP的竞争中。现在唯一缺少的就是快速开发模型的支持,再一次希望PRADO能够成为PHP官方库的一部分,或者,PHP官方加入快速开发模型学支持。那就完美了。
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
快速回复
限100 字节
 
上一个 下一个