Ⅰ php開發網頁一定需要用框架嗎,框架有什麼好處嗎
不一定非得用框架,很多優秀的PHP產品都沒有用框架。
框架的好處是規范代碼,統一架構,方便團隊開發和維護管理,代碼封裝了很多常用功能,開發的時候直接使用,並且不用考慮底層架構,提升開發效率。
所以框架適合開發大多數普通項目。項目太小,沒必要用框架。項目太大,需按具體業務設計架構,框架不一定好用。
Ⅱ PHP鏈夊摢浜涙祦琛岀殑妗嗘灦
PHP鏈夊摢浜涙祦琛岀殑妗嗘灦錛
PHP鏈夊摢浜涙祦琛岀殑妗嗘灦錛
PHP浣滀負涓縐嶅嶮鍒嗘祦琛岀殑緙栫▼璇璦錛屾嫢鏈夊ぇ閲忕殑搴旂敤棰嗗煙鍜屽紑婧愮▼搴忓簱銆傚叾涓錛孭HP妗嗘灦鍙浠ユ湁鏁堟彁楂樺筆HP璇璦鐨勭悊瑙e拰榪愮敤姘村鉤銆傛嗘灦浣滀負涓縐嶇敤浜庡紑鍙戠綉緇滃簲鐢ㄧ▼搴忕殑鍩虹鏋舵瀯錛屽彲浠ヨ╁紑鍙戣呭湪涓嶅悓欏圭洰鐨勫紑鍙戜腑鎻愰珮鏁堢巼銆
鍦≒HP妗嗘灦棰嗗煙涓錛屾湁璁稿氫紬鎵鍛ㄧ煡銆佷嬌鐢ㄥ箍娉涚殑浼樼妗嗘灦錛屽叾涓涓浜涘父瑙佺殑PHP妗嗘灦濡備笅錛
1.Laravel
Laravel鏄涓涓瀵屾湁琛ㄧ幇鍔涚殑Web搴旂敤紼嬪簭妗嗘灦錛屽彲綆鍖栫敤鎴蜂笌閭浠躲侀槦鍒椼佺紦瀛樸佷細璇濈瓑浜や簰鐨勫嶆潅榪囩▼銆侺aravel瀵逛簬瀛︿範鍜屼嬌鐢≒HP妗嗘灦鐨勫紑鍙戣呮潵璇存槸闈炲父鍙嬪ソ鐨勩傚畠鏀鎸丮VC妗嗘灦錛屽苟鎻愪緵寮哄ぇ鐨勮礬鐢辨搷浣滃拰鑹濂界殑妯℃澘璇璦銆
2.CodeIgniter
CodeIgniter鏄涓涓杞婚噺綰х殑PHP妗嗘灦錛屼互綆鍗曘佽交渚垮拰鏄撲簬瀛︿範銆佷嬌鐢ㄣ佹墿灞曞拰緇存姢涓虹壒鐐廣傚畠閫傚悎浜庨偅浜涙兂瑕佸揩閫熷紑鍙戝皬鐨剋eb搴旂敤紼嬪簭鐨勫紑鍙戣咃紝渚嬪傚︾敓鎴栧垰鍒氬叆闂ㄧ殑寮鍙戣呫
3.CakePHP
CakePHP鏄涓涓鏄撲簬瀛︿範銆侀珮鏁堝苟涓斿姛鑳藉己澶х殑PHP寮鍙戞嗘灦銆傚畠緇撳悎浜哛ubyonRails鐨勬濇兂錛屽苟鎻愪緵浜嗗筂VC鐨勫畬鍏ㄦ敮鎸併丆RUD瀵規帴鐨勫揩鎹鋒柟寮忋佸彲鎻掓嫈鐨勬彃浠舵満鍒躲丄uth/MACL絳夊畨鍏ㄦ満鍒躲侰akePHP閫傜敤浜庢瀯寤虹綉絝欍佸簲鐢ㄧ▼搴忓拰鍐呭圭$悊緋葷粺錛圕MS錛夌瓑銆
4.Symfony
Symfony鏄涓涓楂樺害鍙鎵╁睍鐨凱HP妗嗘灦錛屼互鍙閲嶅嶄嬌鐢ㄧ殑浠g爜緇勪歡寮鍙戝厓緔狅紝瀹冮伒寰狹VC鐨勮捐℃ā鍨嬨係ymfony鎻愪緵浜嗗畨鍏ㄣ佷綋闈㈠拰蹇閫熺殑搴旂敤寮鍙戱紝瀹冨箍娉涘簲鐢ㄤ簬鍦╳eb鍜岀Щ鍔ㄥ簲鐢ㄧ▼搴忕殑寮鍙戜腑銆
5.Zend
ZendFramework鏄涓涓寮婧愮殑PHP妗嗘灦錛岀敱Zend鍏鍙稿紑鍙戠$悊銆傚畠鐨勭伒媧繪у拰鍙鎵╁睍鎬т負鐢ㄦ埛鎻愪緵鐙鐗圭殑浣跨敤浣撻獙銆備笌鍏朵粬妗嗘灦涓嶅悓錛孼end妗嗘灦鏄涓涓緇勪歡寮忔嗘灦錛屾瘡涓緇勪歡鍙浠ヤ綔涓虹嫭絝嬬殑杞浠跺簱浣跨敤錛屽寘鎷璁よ瘉銆佺紦瀛樸佹棩蹇楃瓑銆
鎬諱箣錛屼互涓婂垪涓劇殑鍑犳懼父瑙佺殑PHP妗嗘灦閮芥湁瀹冧滑鍚勮嚜鐨勭壒鐐瑰拰浼樼偣錛屽傛灉浣犳e湪瀵繪壘涓涓閫傚悎浣犲紑鍙戦」鐩鐨勬嗘灦錛岄偅涔堜綘搴旇ユ牴鎹鑷宸辯殑闇奼傚拰鎶鏈姘村鉤鏉ラ夋嫨閫傚悎鑷宸辯殑妗嗘灦銆
Ⅲ php開發需要框架嗎
什麼是PHP開發框架?x0dx0a有太多的原因使得PHP成為世界上最受歡迎的腳本語言——高度靈活、簡單易用——不過寫PHP(或者任何這種語言)代碼時,人們常常陷入單調重復而令人生厭的體力活動的窘境。而這正是PHP開發框架大顯身手的地方。x0dx0a通過提供一個開發Web程序的基本架構,PHP開發框架把PHPWeb程序開發擺到了流水線上。換句話說,PHP開發框架有助於促進快速軟體開發(RAD),這節約了你的時間,有助於創建更為穩定的程序,並減少開發者的重復編寫代碼的勞動。這些框架還通過確保正確的資料庫操作以及只在表現層編程的方式幫助初學者創建穩定的程序。PHP開發框架使得你可以花更多的時間去創造真正的Web程序,而不是編寫重復性的代碼。x0dx0aPHP開發框架背後的思想被稱為「模型—視圖—控制器」(MVC)。MVC是這樣一種架構模式,它隔離了業務邏輯與UI,允許其一改變而另一者不受影響。(也可以說是關注點的隔離)在MVC中,模型負責數據,視圖負責表現,控制器則是程序主體或者說是負責業務邏輯。從本質上說,MVC拆分了一個程序的開發過程,這樣你就可以修改獨立的每一部分,而其他部分不受影響,這是十分重要的,它使得編寫PHP代碼更為快捷簡單。x0dx0a為什麼要使用PHP開發框架?x0dx0a開發者可能出於不同的考慮而使用PHP開發框架,不過首當其沖的原因是為了加速開發過程。相似工程之間的代碼重用能夠節省開發者大量的時間和精力。PHP開發框架內置了預建的模塊,免去了冗長又令人厭煩的編程工作。這樣開發者就能夠把時間活在開發實際程序上,而不是每一次都要為每一個項目重建基礎模塊。x0dx0a穩定性是開發者使用框架的另一個重要原因。盡管簡單是PHP最大的資本,也是許多人喜愛這個腳本語言的原因,它也是PHP的「潘多拉之盒」,尤其是那些初學者而言,PHP是如此的簡單以至於他們會完全沒有意識地寫出低質量的代碼。這樣的PHP程序可能在大多數時間內仍正常工作,但你可能已在代碼中留下了巨大的安全漏洞,使其易受攻擊。要時刻牢記PHP是一門很寬松的語言十分重要,因此確保不在代碼中遺留任何安全漏洞是重中之重——即使程序看起來工作正常。x0dx0a最後一點,PHP開發框架是可擴展的,並且有許多框架可供選擇。你也可以創造你自己的,不過許多開發者決定從那些流行的知名的開發框架中做選擇,因為它們往往有著龐大的支持團隊,以及相關的論壇/社區方便你與其他使用同一個框架的開發者相互交流。注意,你應當事先檢驗你的項目是否需要使用框架,這里提供一份簡單的列表以供參考:使用框架能否節省你(和其他任何會使用它的人)的時間和精力?是否能夠讓程序得到更好的表現?能否提高穩定性?如果你對上面任何一個問題的回答是肯定的,那麼使用PHP開發框架對於這個項目就可能是正確的選擇。x0dx0a何時使用PHP開發框架?x0dx0a這是開發者,無論初學者還是經驗豐富的專家,常常詢問的問題,但又真的沒有直截了當的答案。對於許多初學者而言,框架提供了良好的穩定性和簡潔性,所以他們認為只要能用就應該用框架。它能夠減少低質量代碼的產生,並加快項目進度。x0dx0a另一方面,許多經驗豐富的PHP程序員把框架視為那些不懂得如何寫出高質量的清晰的代碼的「初級」程序員而設計的工具。這句話對錯與否有待商榷,但事實上PHP開發框架的確是用來節省時間和提高編程效率的工具。x0dx0a在忙於接近最後期限的工程時,使用PHP開發框架將帶來巨大的效益,因為它能夠極大地加快編程進度。所以如果你時間緊迫,使用PHP開發框架是極其正確的。應當把PHP開發框架列入考慮范圍的另一個例子是當你忙於一個有大量重復代碼的項目時,因為它有助於減少重復工作量。x0dx0a在PHP開發框架中應當關注什麼?x0dx0a去搜索PHP開發框架的人將會看到各式各樣的選擇,你甚至可以創建你自己的,盡管只推薦PHP專家們這么做。在尋找最適合你需求的PHP開發框架時,你要時刻想著誰會使用和/或徹頭徹尾地修改它,這點很重要。如果會有許多人使用這個程序,最好用一個大多數開發者都熟悉的框架。另一方面,如果你想要一個自己使用的Web程序,你最好選擇一個你覺得最舒服的PHP開發框架——管它是流行還是不受歡迎呢。x0dx0a在尋找PHP開發框架時應該考慮多種因素:簡單易用,敏捷開發/性能,在其它開發者中間的流行程度,強大的特性,以及支持/論壇。我推薦你先嘗試幾款不同的PHP開發框架,從中找出一個最適合你需求的,各種框架之間有些微的差異,有著不同的優勢和劣勢。就拿Zend Framework來說,V3版本之後就帶有了豐富的功能,再加上一個可擴展的支持系統,這一切都是因為它存在了足夠久。作為對照,CakePHP是另一個比Zend Framework年輕的PHP開發框架,它的支持系統的規模就略微小些(盡管對這個框架的支持正在飛速增長),但CakePHP更加用戶友好且簡單易用。x0dx0a如你所見,每種PHP開發框架都有它自己的有點,所以最好先做一些嘗試,捕捉一些錯誤以便找出哪個框架能最好地服務於你的需求。另一種很好的選擇框架的方式是咨詢你那些身處開發者社區的同事,問問他們喜歡哪個。那些真正用過某個框架的人會告訴你它是否易用,特性,可用的支持,框架周邊的社區所涉及的領域,他們還可能告訴你它的缺點。x0dx0a使用PHP開發框架時最常見的錯誤x0dx0a任何一種類型的編程都會出現錯誤,不過PHP開發框架能夠極大地限制這些錯誤的產生,因為它從開發過程的一開始就提供了經過驗證的正確代碼。而且看來重復的代碼編寫會增加錯誤出現的概率,而框架徹底解決或至少減少了那個問題。x0dx0a這就是說,使用PHP開發框架仍然又需要注意的問題。例如,除非你是個PHP專家,否則你應該選擇一個流行些的框架,它們有著豐富的支持和一定的活躍用戶基數(下面會列舉一些流行的PHP開發框架)。有許多框架只有少得可憐的支持甚至沒有支持,並且/或者是由對PHP了解有限的人創建的。這些框架會導致你的程序不能正常工作,更壞的情況下會導致你的網站出現災難性的安全問題。x0dx0a另一種常見的錯誤是沒有確保資料庫和網站伺服器兼容特定的框架。例如Seagull PHP Framewor推薦如下配置:x0dx0aPHP: PHP 4.3.0 是最低配置,之後的版本也支持,PHP 5.1.1 及更高版本也可以。請避免任何 5.0.x 系列的東西。x0dx0aMySQL: MySQL 4.0.x, 4.1.x 和 5.0.x 都支持,你也可以使用 3.23.x。x0dx0aApache: Seagull 在 1.3.x and 2.x 系列的 Apache 中工作得很好。x0dx0a如果你不能滿足這些要求,你就不能得到所選擇框架可能的最佳性能。就算你是PHP專家,也應該在嘗試框架之前閱讀其文檔以確保兼容性。x0dx0a和上面這個錯誤比較類似的,不按照推薦安裝步驟去安裝你的PHP開發框架也會給你帶來令人頭痛的煩惱。仍然用Seagull作為例子——Seagull的Wiki上有一份詳細的框架安裝流程,其中有幾個關鍵步驟有時候常常被粗心或者沒有戒心的開發者輕易地忽略了。關鍵是你一次就把框架裝好會讓你在接下來的實際開發中節約不必要的時間開銷。
Ⅳ PHP框架PHP開發框架有哪些
PHP框架在開發中扮演著重要角色,主要分為兩類:基於MVC架構和事件驅動。讓我們來詳細了解一下幾個常見的PHP框架:
Ⅳ PHP框架php框架介紹
PHP框架是一種開發Web應用的有力工具,它就像一個預先設計好的結構,為PHP Web項目開發提供了標准化的流程。通過框架,PHP開發過程變得如同生產線作業,旨在加速軟體開發速度,即快速應用開發(RAD)。它能顯著節省時間,使得開發者能夠更專注於創新,而非重復編寫基礎代碼,從而創建出更為穩定的應用程序。
框架的一個重要優點是它確保了對資料庫操作的正確管理,減少了開發者在這方面的困擾。它提倡在表現層(Presentation Layer)進行編程,這有助於新手更好地理解和構建穩定的應用,降低了學習曲線。使用PHP框架,開發者可以把精力集中在構建核心功能和用戶體驗上,而不是在重復的代碼實現上。
總的來說,PHP框架為PHP開發者提供了一個高效、結構化的開發環境,使他們能夠更高效地開發出高質量的Web應用,真正實現了開發效率和代碼質量的雙重提升。
Ⅵ php中都有哪些框架,為什麼要用框架呢,用框架有什麼好處
以下為十個目前最流行的基於MVC設計模式的PHP框架。
1. Yii
Yii是一個基於組件的高性能的PHP的框架,用於開發大規模Web應用。Yii採用嚴格的OOP編寫,並有著完善的庫引用以及全面的教程。從MVC,DAO/ActiveRecord,widgets,caching,等級式RBAC,Web服務,到主體化,I18N和L10N,Yii提供了今日Web 2.0應用開發所需要的幾乎一切功能。而且這個框架的價格也並不太高。事實上,Yii是最有效率的PHP框架之一。
2. CodeIgniter
CodeIgniter是一個應用開發框架——一個為建立PHP網站的人們所設計的工具包。其目標在於快速的開發項目:它提供了豐富的庫組以完成常見的任務,以及簡單的界面,富有條理性的架構來訪問這些庫。使用CodeIgniter開發可以往項目中注入更多的創造力,因為它節省了大量編碼的時間。
3. CakePHP
CakePHP是一個快速開發PHP的框架,其中使用了一些常見的設計模式如ActiveRecord,Association Data Mapping,Front Controller以及MVC。其主要目標在於提供一個令任意水平的PHP開發人員都能夠快速開發web應用的框架,而且這個快速的實現並沒有犧牲項目的彈性。
4. PHPDevShell
PHPDevShell是一個開源(GNU/LGPL)的快速應用開發框架,用於開發不含Javascript的純PHP。它有一個完整的GUI管理員後台界面。其主要目標在於開發插件一類的基於管理的應用,其中速度、安全、穩定性及彈性是最優先考慮的重點。其設計形成了一個簡單的學習曲線,PHP開發者無需學習復雜的新術語。PHPDevShell的到來滿足了開發者們對於一個輕量級但是功能完善,可以無限制的進行配置的GUI的需求。
5. Akelos
Akelos PHP框架是一個基於MVC設計模式的web應用開發平台。基於良好的使用習慣,使用它可以完成如下任務:
◆方便的使用Ajax編寫views
◆通過控制器管理請求(request)及響應(response)
◆管理國際化的應用
◆使用簡單的協議與模型及資料庫通信
你的Akelos應用可以在大多數共享主機服務供應方上運行,因為Akelos對伺服器唯一的要求就是支持PHP。因此,Akelos PHP框架是理想的用於發布單獨web應用的框架,因為它不需要非標准PHP配置便能運行。
6. Symfony
Symfony是一個用於開發PHP5項目的web應用框架。
這個框架的目的在於加速web應用的開發以及維護,減少重復的編碼工作。
Symfony的系統需求不高,可以被輕易的安裝在任意設置上:你只需一個Unix或Windows,搭配一個安裝了PHP5的網路伺服器即可。它與差不多所有的資料庫兼容。Symfony的價位不高,相比主機上的花銷要低得多。
對於PHP開發者而言,使用Symfony是一件很自然的事,其學習曲線只有短短一天。干凈的設計以及代碼可讀性將縮短開發時間。開發者可以將敏捷開發的原理(如DRY,KISS或XP等)應用在其中,將重點放在應用邏輯層面上,而不用花費大量時間在編寫沒完沒了的XML配置文件上。
Symfony旨在建立企業級的完善應用程序。也就是說,你擁有整個設置的控制權:從路徑結構到外部庫,幾乎一切都可以自定義。為了符合企業的開發條例,Symfony還綁定了一些額外的工具,以便於項目的測試,調試以及歸檔。
7. Prado
PRADO團隊由一些PRADO狂熱者組成,這些成員開發並推動PRADO框架以及相關項目的進行。
PRADO的靈感起源於Apache Tapestry。從04年開始,PRADO成為SourceForge上的開源項目之一。這個項目目前進展到了3.x版本。
8. Zend
作為PHP藝術及精神的延伸,Zend框架的基礎在於簡單,面向對象的最佳方法,方便企業的許可協議,以及經過反復測試的快速代碼庫。Zend框架旨在建造更安全,更可靠的Web 2.0應用及web服務,並不斷從前沿廠商(如Google,Amazon,Yahoo,Flickr,StrikeIron和ProgrammableWeb等)的API那裡吸收精華。
9. ZooP
Zoop PHP框架,意為Zoop面向對象的PHP框架。
這是個穩定,可伸縮並可移植的框架。從誕生到現在的5年間,已經在不少產品開發中被使用。Zoop是一個快速,有效並干凈的框架。它的伸縮性很好,你可以只安裝你需要的功能。
對代碼並不很熟悉的開發者也可以通過Zoop快速的開發安全的web應用。熟練的開發者則可以更加將Zoop的彈性利用到極致。
Zoop建議將display,logic以及數據層(MVC)分開使用。
Zoop由很多組件和項目集合而成,其中包括smarty和prototype AJAX框架,PEAR模塊等。高效的核心組件提供了很多你原本需要自己編碼來實現的功能。Zoop內置的糾錯功能可以通過配置實現生產環境下的錯誤日誌生成,這個錯誤日誌提供了很多信息,可讀性很高,可以更輕易的尋找並排除錯誤。
Zoop的一個特別之處在於其GuiControls,在PHP中是一個相當革新的想法。它提供了很多form widgets與驗證完整的集合到一起,並形成了一個可以輕松打造個性化GuiControls的框架。
10. QPHP
QPHP,意為快速PHP,它是一個與ASP.NET類似的MVC框架。基本上它是這樣一個情況:
◆整合了Java和C#的美感
◆除去了在其他PHP框架中使用的Perl形式的意義含糊的語言
◆大量基於OOP的概念
國內的thinkphp也很不錯,使用框架可以避免重建底層函數等,加快開發速度。
Ⅶ 做PHP網站一定要用框架嗎
不一定要用,根據需求,用不用,是你自己的選擇;
用框架開發的好處:
1.公共代碼、類庫:這樣不用你再去寫一個具體的功能,可以直接拿來用,提高開發效率;
2.代碼安全:框架一般都會輸入、輸出進行基本的過濾,提高了代碼攻擊的安全性;
3.用更少的代碼實現更強大的功能;
。。。好處多多
如果你只是想打實自己的基礎,完全可以不用框架開發
如果在公司工作,我想你的領導會要求效率的
Ⅷ 基礎知識回顧:為什麼要使用PHP框架
為什麼要使用PHP框架?
開發人員使用PHP框架的好處很多,其中之一是加快開發進程。在類似項目中重用代碼將為開發者節省大量的時間和精力。框架為執行繁瑣的代碼任務提供預建模塊,因此,開發人員可以把時間花在實際應用的開發上,而不是每一個項目都重新構建基礎功能。
穩定是開發者使用框架的另一個重要原因。雖然簡單是PHP最大的優點,很多人也因為這一點喜歡使用這個腳本語言,但它同時也是PHP最大的缺點。一些開發者尤其是初學者很容易寫出低劣的代碼,而自己卻沒有意識到。使用PHP,應用往往會將靜態工作加倍,不知不覺中您可能已經在編碼時打開了一個大的安全漏洞,因此可能會受到攻擊。重要的是要記住,PHP是一個非常寬容的語言,因此,更重要的是在編程時確保封閉任何漏洞,即便應用看起來可以正常工作。
最後,PHP框架的使用是非常廣泛的,而且有許多不同的框架可供選擇。許多開發者會選擇知名的框架,是因為它的知名度、其開發團隊的巨大支持,而且他們可以通過論壇/社區來與其他使用相同框架的開發者交流,當然你也可以開發自己的框架。這里提醒一下,首先應該檢查你的項目來決定是否應該使用一個框架。你應該問自己:它會節省你和其他使用者的時間和精力么?應用程序的性能會更好么?是否會提高穩定性?如果這些問題你的回答都是是,那麼你就該為你的項目選擇一個合適的框架了。
何時使用PHP框架?
這是一個無論有經驗的開發者還是初級開發者都共有的問題,而且這個問題也確實沒有直接的回答。對於許多初學者來說,一個框架將提供很多簡便和穩定,因此應該盡可能地使用PHP框架。這將有助於減少或消除不良編碼,加快開發進程。
另一方面,許多有經驗的PHP程序員將框架視為不知道如何寫出好的、干凈的代碼的低級程序員的工具。姑且不論這一點的真假,起碼毋庸置疑的是PHP框架是一個可以用來節省時間並強化自己編碼的工具。
當工作的項目時間緊迫時,使用PHP框架就有很多好處,可以大大加快編碼進程,因此所以如果你時間緊迫,使用PHP框架就是很好的選擇。另一個例子是,當你所做的項目有大量代碼時,也應當考慮使用PHP框架,因為這將有助於減少工作的繁瑣度。
尋找一個什麼樣的PHP框架?
有許多可供開發者選擇的PHP框架,甚至還可以創建自己的框架,盡管只建議PHP專家級這樣做。當尋找你最需要的PHP框架時,重要的是要搞清楚誰將自始至終使用或修改你的應用,如果是有很多人做這件事情,那麼最好使用流行的PHP框架,這樣大部分開發者都不會陌生。另一方面,如果你想構建Web應用程序為你個人使用,那就最好選擇令你滿意的PHP框架,而不在乎它在開發者社區中是否流行。
選擇PHP框架的參考因素有很多,包括:容易使用、快速開發、性能、開發者中的流行程度、強大的功能,技術支持、論壇等。當你第一次選擇PHP框架時,為了找到一個適合你需求的最佳選擇,建議多嘗試幾個。每個框架都有所不同,並有不同的長處和短處。例如Zend框架由於V3和多樣的功能、並且有一個廣泛的支持系統,因而它流行了這么久。相反, CakePHP是另一個晚於Zend框架的PHP框架,相應的支持系統也比較少,但更方便和易於使用。
正如你所看到的,每種類型的PHP框架都有自己的優點,因此,最好反復試驗以找出其中哪個最適合你的需要。另一個選擇PHP框架的有效方式是咨詢你的同事,看看開發社區里選擇哪個。那些真正使用過具體框架的能夠明確地告訴你它的易用性、功能、支持可用性、社區內的情況,當然可能還有不足。
使用PHP框架最常見的錯誤
任何類型的編程中都可能有錯誤,但是PHP框架有助於顯著限制這些錯誤。重復編碼似乎加劇了這種錯誤,而框架則解決了這一問題。盡管如此,在使用任何PHP框架時仍要注意。例如,除非你是一位PHP編程的專家,否則你應該總是選擇使用流行的框架,有大量的支持和積極的用戶群。很多框架的支持很少甚至沒有,它們可能是被PHP知識有限的個別開發者所創建的。這些類型的框架,可能會使你的應用程序無法正常運行,更糟糕的是,可能會給你的網站帶來災難性的安全問題。
另一些常見的錯誤是,不能確保你的資料庫和Web伺服器符合特定框架。例如,Seagull PHP Framework建議如下配置:
◆PHP :最低是PHP 4.3.0,PHP 5.1.1或者更高版本更佳,避免任何5.0.x版本中的東西;
◆MySQL的:支持MySQL的4.0.x,4.1.x和5.0.x,也可以使用3.23.x;
◆Apache:Seagull支持1.3.x以及Apache的2.x系列。
如果你沒有滿足這些要求,您將無法在你所選的框架中看到最好的性能。即使你是PHP的專家,你也應該經常復習框架的說明文檔,確認兼容性後再嘗試。
類似於前面提到的常見的錯誤,不遵循建議的安裝進程的話,你的PHP框架也可以給你帶來一些令人頭疼的問題。以Seagull 為例,在Seagull的wiki有一個詳細的框架安裝過程,其中有幾個關鍵步驟,很容易被不小心或不知情的開發者忽視。因此你要花費時間來安裝框架並遵循安裝說明。
最好的PHP框架有哪些?
過去的幾年中,因為PHP已發展成為大多數開發者選擇的腳本語言,因而也產生了大量的PHP框架。什麼是最好的PHP框架,仁者見仁智者見智,因為並非每一個框架都能夠適合每一個人。以下是5個最佳和最流行的PHP框架選擇:
◆The Zend Framework
Zend Framework在開發者社區中很有人氣,其重點是Web 2.0風格的應用程序。由於其大量的黨羽、廣泛的支持和積極的用戶群,Zend被稱為PHP Company。Zend即使不是當今最流行的PHP框架,也絕對是之一。它強大的功能能夠滿足企業級的需求,當然它的使用也需要具備廣泛的PHP知識。
◆CakePHP
從初學者到高級PHP開發者,CakePHP都是一個很棒的選擇。它與 Ruby on Rails設計的原則基本相同,主要集中在快速開發方面使其成為一個快速應用開發的優良框架。其迅速增長的支持系統、簡單和可擴展性使CakePHP成為當今最熱門的PHP框架。
◆Symfony
Symfony針對的更多的是高級開發者,也即創建企業級應用的開發者,尤其是Askeet和Yahoo! Bookmarks。這個開源的PHP框架功能全面,但它的主要缺點是速度慢於其他框架。
◆CodeIgniter
CodeIgniter以其易用性、性能和速度而聞名。不同於Symfony,CodeIgniter主要針對的是與人共享主機的開發者,或者為小型設備尋找PHP框架的開發者。它提供簡單的解決辦法,而且有一個擴展庫包括視頻教程、論壇、用戶指南和wiki。初學者應該考慮使用CodeIgniter 。
◆Seagull
Seagull是一個穩定的用於構建web、命令行和GUI應用的PHP框架。這是一個非常易於使用的框架,非常適合初學者到高級程序員。對於初學者,Seagull有一個範例應用庫,可以自己設定後滿足自身需求;對於高級開發者,Seagull提供了眾多選擇包括最佳實踐、標准、模塊化的代碼基,這些都可以幫助快速簡單地構建Web應用程序。Seagull有一個活躍的開發者社區,內有大量的支持性文檔和說明。