百独托管7500 紫田网络超高转化播放器收cps[推荐]速盾CDN 免实名免备防屏蔽阿里云 爆款特卖9.9元封顶提升alexa、IP流量7Q5团队
【腾讯云】中小企福利专场【腾讯云】多款产品1折起高防 随时退换 好耶数据小飞国外网赚带你月入万元炎黄网络4H4G10M 99每月
香港带宽CN2/美国站群优惠中客数据中心 服务器租用联盟系统移动广告平台 中易企业专场腾讯云服务器2.5折九九数据 工信部正规资质
腾讯云新用户大礼包代金券高价收cpa注册量高价展示【腾讯云】2核2G/9.93起租服务器找45互联 随时退换阿里云 短信服务 验证秒达

[技术交流] PHP 模板高级篇总结 [复制链接]
查看:1075 | 回复:11

42

主题

66

帖子

130

积分

落伍者(一心一意)

Rank: 1

贡献
136
鲜花
4
注册时间
2009-8-14
发表于 2013-3-23 16:56:59 | |阅读模式 来自 中国江苏南京
如何使用PHP来快速地编写代码,模版似乎成了唯一的选择。但是一个PHPer最终应该坚持使用模版,放弃模版,还是使用自己的模版?

以下想法是属于所有PHPer的想法:

“模板这东西,其实最重要的是适合自己的项目需求,而不是适合自己的习惯.比如一个企业的宣传网站,访问量不大,更新量也不大,用什么都一样,甚至不用,直接PHP+HTML写可能速度最快.也没什么不可.但是如果是一个新闻系统,或者是内容发布系统.两者这样,就非常有必要用到模板这一技术.因为他们都有一个共通的地方,就是有一类页面要用到同一个样式的页面设计.而根据实际情况,比如访问量的大小,项目的紧急程度以及程序员对于模板技术的熟练程度,选择最适合项目的模板技术..这才是首选。”

“从开始学习php就开始接触模板,我用的是smarty模板引擎(官方支持,功能强大),使用时间越长越发觉得模板是个好东西。只要要涉及到页面显示的东西,我的都会用模板去写,如果不用模板写程序总觉得别扭。我想其他的phper也会有相同的感觉,因为模板设计的初衷是将代码和页面分离出来分别处理,毕竟谁也不愿意一边写代码,一边处理页面。”

“有人说SMARTY已经很好了,但也有人说SUPERTPL更好,也有人更中意于PHPLIB我认为每个模板都有自己优点,也有自己的不组,关键看你的项目需要什么,用什么最好!用模板肯定是没有错的最初使用的是PHPLIB,使用过了一段时间后,感觉太简单了,每个模板变量都要写代码去替换,每引用一个模板也得写一行代码(也许PHPLIB有批量处理功能,我太菜不知道)因而放弃了,后来用plog建站的时候接触到了smarty,感觉smarty过于庞大,确实能加快开发进度,但是很多功能实际都用不上,因此,最后还是自己写了模板引擎,要模板实现的功能很简单,就是一个模板变量的替换功能,再加上include其他模板和foreach块操作功能。”

“我还是用PHPLIB,不过,我会按自已的经验与需要,写一些函数或类来封装最常用的一些针对模板输出的处理。我使用自己的模板,还要写模板解析代码,累呀。我选择使用现有优秀的模板。偶在别的论坛上看见一些很厉害的人不用模板...可能是没到那种境界...个人感觉还是使用模板的好..至少可以分工..加快开发速度。使用自己的模板? 感觉没有必要哈...用现成的就行了..在现成的基础上加上一些自己学要的实际功能。我不使用模板引擎,但我也是使用模板,只是跟你们的不一样。因为模板引擎太慢了感觉不好用。”

“我用第三方的,最好是开源的。至于用哪个,看个人的爱好吧。我还是倾向于使用自己的模板简单实用。由于考虑到性能,我一般不使用通用的模板,会根据实际情况做一些取舍,具有一定的局限性。根据需要来决定使不使用模板,以及使用什么模板。灵活一点总是没有坏处的。个人喜欢简单快速的模板,可以考虑用现成的模板,不过一般会根据实际项目优化一下,把里面用不到的一些功能删除等。”

“使用模板一般倒不会导致瓶颈,至于会影响点效率主要这么几点:

1、程序和模板分离后,一个文件就变成两个或者多个了,那读取模板这个IO也是要点时间的
2、解析模板相对是比较复杂的,一般都需要N个 preg_match,preg_replace之类函数来处理或者替换
3、模板的载入和替换工作明显需要比不使用模板占用更多的内存

所以提高效率注意以下几点:

1、模板解析程序选用支持编译和缓存的,这个对性能好处是最明显,看自己怎么灵活应用了
2、解析程序尽量简单,什么功能都放进去那用起来是方便了,性能也差了
3、做html的模板页面时候也是遵从简单的原则,比如按xhtml标准做,尽量不要把一个页面拆成很多个模板然后再include。”

“如果使用模版的话,我觉得有能力还是自己写一个好。这也是锻炼。不过要用我觉得小强很好。可以在可视化下编辑。我个人也认为模板文件的可视化编辑性非常重要。不能要求模板页面的制作也要有相当程序开发基础的。具体问题具体分析,模板使用与否,选择已经成型的优秀模板类还是自己去写,一切都是根据具体的项目开发而言的,不能死求哪一个的。感觉现有的那些模版不够完善,要么功能少,要么速度慢,还是自己做的好。”

“总结,PHP模板可以让你的代码脉络更加清晰,结构更加合理化。但是,PHP模板的发展总是会比PHP应用的迅速发展缓慢许多,在这种情况下,反而会影响到PHP应用的开发。对于每一个PHPer来说,没有一个PHP模板对他是最合适、最完美的。因为所谓的PHP模板就是大众化的东西,并不是针对个人的。所以,如果能在对PHP特点、应用有清楚的认识的基础上充分认识到模板的优劣势和该PHP应用原理,PHPer就能得到自己需要的适合自己开发风格的PHP模板。这也是PHP最重要的思想之一,PHP提供的只是方法、途径,而不是最终解决方案。所以模板和PHP应用、产品一样都可以改造为自己的PHP模板。因为这里面寄托着创造者的思想。

限于各种不同的条件限制,比如时间、经验,所以大家可能认为做一个自己的PHP模板是非常困难。其实,你需要的不是重新构造一个PHP模板,而是选择一个最贴近自己的PHP模板加以改造。因为PHP需要继承、创新。当然,做一个自己的PHP模板一步一步地实现,并及时融入最新的思想和理念。个人PHPer可以从细节做起,从自己最需要的地方、自己的开发习惯做起。PHPer团队可以分工协作进行PHP模板本地化,尤其对于公司而言尤为实用。就算你只是修改了PHP模板里面的一个符号,仅仅是一个符号也能说明你对它加以了改造,它就是属于你的。最重要的是,属于自己的PHP模板永远不是固定不变的,它将伴随你一直成长,也会成为你的PHP历程的见证。

PHP不需要非常精通的语法;PHP不需要你自己去开发众多的库;PHP不需要你去为性能、稳定性等语言自身的特性而担心。PHP需要的是你的逻辑;PHP需要的是你的创造力;PHP需要的是你的思想!”

4

主题

41

帖子

28

积分

落伍者(一心一意)

Rank: 1

贡献
76
鲜花
0
注册时间
2012-11-24
发表于 2013-3-24 10:22:45 | 来自 中国广东中山
学习了,谢谢分享

309

主题

535

帖子

469

积分

保护或锁定(状态异常,请联系客服)

贡献
913
鲜花
0
注册时间
2012-12-2

落伍手机绑定

发表于 2013-3-24 21:14:07 | 来自 中国北京
很给力,都是基础知识。

36

主题

3446

帖子

4465

积分

落伍者(两全齐美)

Rank: 2

贡献
6300
鲜花
9
注册时间
2009-2-2

QQ绑定

发表于 2013-3-25 08:24:49 | 来自 中国安徽芜湖
看来,楼主对此很有研究
www.hxqw.com ,www.241300.com,www.ahnl.com.cn

563

主题

1893

帖子

1670

积分

落伍者(两全齐美)

用道

Rank: 2

贡献
622
鲜花
1
注册时间
2010-1-4
发表于 2013-3-28 17:22:52 | 来自 中国广东深圳
先来多学习了哟

32

主题

2572

帖子

151

积分

落伍者(一心一意)

Rank: 1

贡献
6
鲜花
0
注册时间
2012-7-10
发表于 2013-3-29 11:39:42 | 来自 中国陕西西安
得努力努力的学习才是啊
刚入门 很多都不懂的
治宫颈糜烂的药美人芯
[url=http://www.xk101.com/]口臭吃什么药[/ur

111

主题

5380

帖子

5万

积分

落伍者(五谷丰登)

im286首席鉴黄师

Rank: 8Rank: 8

贡献
495
鲜花
71
注册时间
2009-8-23

QQ绑定落伍者落伍微信绑定落伍手机绑定

发表于 2013-3-29 14:16:36 | 来自 中国江西南昌
楼主厉害,是技术级别的高手啊。
九九数据!10年老牌IDC,专业、专注、靠谱!(听说可以卖签名?)

14

主题

392

帖子

127

积分

落伍者(一心一意)

Rank: 1

贡献
1251
鲜花
0
注册时间
2013-1-1

落伍微信绑定落伍手机绑定

发表于 2013-4-4 13:56:57 | 来自 中国浙江宁波
学习了,学起来有点难
精油的使用方法
http://www.lanhanren.com/

36

主题

1万

帖子

7567

积分

落伍斑竹

程序要像女孩身材,优美典雅...

Rank: 8Rank: 8

贡献
1337
鲜花
19
注册时间
2005-2-12
发表于 2013-4-4 14:03:15 | 来自 中国广东深圳
不要浪费时间,一开始就要用smarty.
技术到一定层次自己试着写一个...

我现在一直用smarty,smarty语法已经成为一个模板语法标准了...

99

主题

1687

帖子

1407

积分

落伍者(两全齐美)

北京2008奥运发贴专员

Rank: 2

贡献
0
鲜花
0
注册时间
2005-8-14
发表于 2013-4-9 22:54:57 | 来自 中国云南昆明
不错 学习了~~~~
论坛客服/商务合作/投诉举报:2171544 (QQ)
落伍者创建于2001/03/14,本站内容均为会员发表,并不代表落伍立场!
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论!
落伍官方微信:2030286 邮箱:(djfsys@gmail.com|tech@im286.com)
© 2001-2014

浙公网安备 33060302000191号

浙ICP备11034705号 BBS专项电子公告通信管[2010]226号

  落伍法律顾问: ITlaw-庄毅雄

手机版|找回帐号|不能发帖?|Archiver|落伍者

GMT+8, 2024-5-18 17:48 , Processed in 0.161111 second(s), 33 queries , Gzip On.

返回顶部