成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

淺議PHP程序開發中的模板選擇

開發 后端
本文介紹的是PHP程序開發中的模版選擇,希望對你有幫助,一起來看。

關于PHP的模板的確是一個說起來容易做起來麻煩的事情。隨便一數大概有20種以上的選擇,光pear里面就包含了5中不同的模板,實在讓人頭疼。 

千萬不要人云亦云的說這個好那個不好,選擇模板之前最好先應該搞清楚模板的真正目的是什么? 簡單地說,模板的核心目的就是一個 team work。主要的作用方式有兩種:

1、分離HTML和PHP使網頁設計師和PHP程序員合作更加愉快。 

2、分離顯示邏輯和事物邏輯,使得核心事務邏輯的變更和應用程序的擴展更加容易和靈活,也就是說使得程序員之間合作更加愉快。(這一點經常被人們忽視或者誤解,總以為把PHP從HTML中弄出去就叫分離顯示邏輯和事物邏輯了,如果這樣當初又何苦讓PHP和html 混在一起呢?) 

搞清楚這個模板的真正目的是什么,就容易做出正確的選擇了。 

如果只有你一個php程序員但是需要和其他的網頁設計人員一起協同工作,那么選擇能夠分離HTML和PHP的模板就可以了,phplib (現在好像集成到 Pear 里面了 http://pear.php.net/package/HTML_Template_PHPLIB)或者 FastTemplate 都是這樣的東西,很簡單容易上手。 

如果你的網站界面比較丑陋并且主要由程序員來完成,但是功能比較復雜更需要強大的擴展功能,需要分離各個層次包括顯示邏輯,那么不要用什么特別的東西,PHP本身就是最好的模板了。

要注意的是在這種情況下,你要非常認真的設計你的程序,始終記住要分離的不是PHP和 html 而是事務邏輯(business logic )和顯示邏輯(presentation logic)。這也是為什么我一直對于Smarty 這種東西非常的抵觸, 因為這個 Smarty 的語法太復雜了太強大了,幾乎重新發明了一種腳本語言東西,(即使是PHP的程序員也要重新學習它)。更讓人費解的是 這種腳本 越是強大,越容易讓人將事務邏輯(business logic )和顯示邏輯(presentation logic)混在一起, 破壞了模板的初衷。

如果你既想HTML和PHP分離,得到更好的視覺設計,又想整個系統有非常強大的擴展能力能夠適應html,xml,wml各種界面,而且不用去學習復雜的語法的同時提供較高的運行效率,那么這就是一個相當有挑戰性的問題了。壞消息是目前還沒有一個成熟的模板真正能夠達到這樣的要求,好消息是完成這樣的一個模板并不是很難,如果你嘗試過Zope或者是ColdFusion就會發現這種模板的影子,(wact http://wact.sourceforge.net/ 和 phptal http://phptal.sourceforge.net/ 就是在向這個方向發展,應該很有前途)。

模板和數據的結合(模板的調用)方式主要有兩種:推的方式和拉的方式。 

推的方式是用PHP將數據推給模板,就是說需要程序員明確地為模板中的每一個變量賦值,將他們綁起來。而拉的方式則像把php 和 html 混在一起一樣,模板種的變量主動把數據拽進來。說到模板就不能不提到另外兩種東西:

phphtmllib 和 quickform(http://pear.php.net/package/HTML_QuickForm) 這兩種東西是用傳統的方式來通過各種頁面構件來完成HTML的頁面的 整個頁面的構造完全掌握再程序員手里,也許很多編寫過傳統GUI桌面程序的程序員更喜歡這種方式。 

更加漂亮的方案 

如果做商業軟件的話,Flash應該是更漂亮的方案(別搞錯了,別以為就你知道php支持ming 和swf庫可以動態生成 Flash,我說的不是這個。) 我要說的是支持Flash Remoting 的方案,這種東西才是真正有意義的PHP和flash的結合。由視覺設計師完成flash部分,PHP 程序員通過 flash remoting 的方式將 數據發送到 flash 做成的客戶端中。 

目前有兩種方案: 

AMFPHP 

http://www.amfphp.org/

由于Macromedia Flash Remoting 傳輸數據時 使用的是一種特有的更加高效數據格式, 所以AMFPHP通過分析數據格式,

在服務器端構造了相應的php類來接收,解析和編碼這些數據從而達到交換信息的功能(就像Samba一樣,應該屬于一種 Hacking 吧)。 

PHPObject

http://ghostwire.com/resources/phpobject/

PHPObject 則采用了另外一種方法,通過在flash中嵌入一些acti****cript的組件通過開放的格式soap來傳送數據。其實關于PHP的模板還牽扯到很多其它的問題,一時半會我也只能寫這么多了。

 

責任編輯:于鐵 來源: 互聯網
相關推薦

2010-04-29 16:46:59

Unix進程

2015-09-08 14:42:17

Android性能優化

2009-12-07 16:25:13

PHP解釋性模板Php

2013-07-04 14:54:24

Android

2015-07-31 14:11:01

內滾動布局

2011-07-07 14:14:41

PHP模版

2009-12-01 19:28:16

PHP模板

2011-07-15 14:01:50

PHP模板引擎

2015-05-05 10:51:32

php頁面跳轉方法

2011-05-19 10:26:32

PHP

2022-08-09 18:08:36

Firefox瀏覽器多賬戶容器

2011-07-07 13:48:35

Smarty

2015-07-02 14:38:44

2009-06-01 11:16:48

PHP網站開發變量作用域

2018-11-20 14:48:54

2024-01-26 15:57:48

云計算平臺

2024-03-22 08:30:00

云開發經驗

2016-02-19 10:31:52

云計算云應用paas

2010-11-16 09:23:13

敏捷開發Visual Stud

2017-05-08 08:34:24

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 91免费电影| av网站免费观看 | 欧美一区二区三区 | 国产精品伦一区二区三级视频 | 欧美视频在线播放 | 一级毛片免费 | 日韩一区二区福利视频 | 日日欧美| 99精品在线| 精品欧美一区二区在线观看 | 性欧美精品一区二区三区在线播放 | 国产精品久久久久久久模特 | 日韩一区和二区 | 午夜码电影 | 国产乱码精品一区二区三区五月婷 | 国产精品网址 | 久久久久亚洲精品国产 | 桃花av在线 | www.亚洲区| www.色综合 | 国产一区在线视频 | 国产精品美女久久久久久免费 | 作爱视频免费看 | 五月精品视频 | 爱爱免费视频 | 久久高潮 | 久久久久国产 | 亚洲国产一区二区三区 | 99久久99 | 中文字幕不卡视频在线观看 | 欧美综合一区二区三区 | 亚洲精品久久久久久久久久久 | 日韩美香港a一级毛片免费 国产综合av | 国产一区二区在线播放 | 久久久91精品国产一区二区三区 | 国产一级电影在线观看 | 国产一区二区在线播放 | 一区在线观看 | 日韩精品在线免费观看视频 | 日韩成人在线免费视频 | 日韩中出 |