php框架優缺點
⑴ php框架真多啊,這么多的框架有什麼不同每一種框架差別很大嗎框架是不是最好的選擇或者使用cms
大多框架都是 mvc 結構的,不同 的框架在數據存儲 讀取有差別,以及一些功能的封裝不同,主版要體現在權數據的存儲調用方面,雖然語句有些不同,但是操作的結果都是一樣的。
有了框架,使php在開發的時候快了很多,可以系統化的管理維護升級。
cms類屬於已經開發的系統,你再次在上面開發屬於二次開發,即在原有的系統上作增刪改,不屬於框架,但是cms是在框架的基礎上開發出來的。
⑵ 當今流行的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的概念
⑶ 用過php框架的請進來,有哪些php框架,優缺點和穩定性
框架這東西,要看你做什麼項目了,如果是小項目沒有必要用yii或者zend這樣的大型框架,雖然功能強大,但是學習成本相對較高,速度現對輕量級框架也有損失。
流行的框架都有成功案例的,你可以去它的官網看看!
像你這些問題,框架官網都會有的,不過速度那個框架都說自己快……
⑷ php rpc好用嗎,有什麼優缺點php rpc框架哪個好
rpc的使用只能說因地制宜吧,例如與硬體通訊.至於開發的話,你可以用swoole擴展或者grpc.
⑸ PHP哪個框架最好
二話不說先來一個 Github 上 PHP 開源項目的排名 Search · stars:>0 · GitHub , 好有個概念.
大家的回答都比較老了, 現在是 2014 年 8 月下旬, PHP 最近這幾年還是發生了很多變化, 尤其是 Laravel 的出現, 讓很多已經開始放棄 PHP 的人又從新回到 PHP 的懷抱.
離開 PHP 是因為覺得社區就是一盤散沙, 大家各種為戰, 當我想學個框架, 來提高生產效率的時候, 上 Google 一搜, 出來的就是
50個你必須了解的 PHP 框架>
<10個最有名的 PHP 框架>....
真的很嚇人, 這么多的框架, 我無從入手.
最後我下定決心, 把每一個框架都學習一遍, 真正在學習的時候, 頭又大了, 每一個框架都有不同的代碼規范, 不同的架構, 不同 "功能一樣調用方式不一樣的函數方法" , 可以這么說
每一個框架都在發明屬於自己的語言
在學到第五個框架的時候, 我就決定放棄了, 因為, 我覺得, 我雖然年輕, 但是不至於時間如此廉價的浪費掉.
後來一直聽說 Ruby 社區有一個叫 Ruby on Rails 的 Web 框架, 是全世界最好的框架, 為了用上最好的框架我開始學習 Ruby 直到接觸 Rails, 還記得第一次用 Rails 寫 Demo App 的時候, 熱淚盈眶呀, 多麼好的設計, 並且最重要的, Rails 的社區是如此理智, 大家喊得口號是
Convention over configuration;
DRY - Don't Repeat You;
KISS - Keep it simple and stupid;
Don't reinventing the wheel;
Optimized for programmer happiness and sustainable proctivity
多麼智慧, 多麼聰明, 又是多麼簡單的一些想法, 我瘋狂的愛上了 Rails.
2012 年末, 無意間在 Tuts+ 網站上看到 Jeffrey Way 的一套 Laravel 3 Essentials ( 注意: Laravel 現在已經是 Laravel 4 了, 這套課程已經 out dated 了 ) 課程, 看完以後對 Laravel 印象深刻, 從那會就一直留意 Laravel 的發展.
2013 年 6 月份, Laravel 4 發布, 集成了 Composer, 框架的可擴展性極高, 還有 100% full testing coverage.
關於 Laravel 4 的好, 我在這個問題裡面已經講了 最好的 PHP 框架是什麼?為什麼? , 就不復制過來了.
Laravel China:
Laravel China is ready Laravel 中文文檔 , 歡迎發起 issue 提交紕漏 和建議 --> Laravel China · GitHub
⑹ 相對於別的php框架來說thinkphp有什麼缺點
PHP框架對於立項來說非常重要,影響的是團隊的開發效率和後續的維護開發成本,而對於框架又是蘿卜青菜各有所愛。同樣一個框架,有人愛到極點,有人罵為垃圾。所以做個整理,各取所需。
1、從Github數據來看,Laravel高居榜首,而它在國外也是用的人最多的。Laravel優點是代碼優雅簡潔;缺點是依賴其他擴展,內部事先復雜,系統復雜時需要配置大量的路由規則,文檔少,版本更新快且不連續。
2、ThinkPHP國人開發維護,優點是中文文檔完善,社區活躍;缺點是高頻單字母函數讓人不知所雲,代碼並不優雅。適合於國人快速開發一些Web系統。個人感覺缺少ORM。
3、phalcon是C寫的PHP框架,以PHP擴展形式載入,優勢是性能絕對的第一,是其他框架的十倍,但缺點是學習成本高,一旦發現框架bug對於不懂C和PHP擴展的同學來說幾乎是死穴。
4、Yii,華裔開發,所以交流上比較順暢,優點是強大的組件,豐富的類庫,成熟的模式,方便的gii,各式的widget,支持ORM,支持多語言國際化,代碼干凈。缺點是入門容易,精通很難,需要懂其設計思想。
多角度對比
性能:phalcon > yii ≈ laravel,因為phalcon使用C語言開發,以php擴展的方式載入,這樣不需要對框架進行額外的解析和執行,所以性能好
代碼可讀性:laravel更勝一籌(表現力較強,不懂php基本也能看懂他在做什麼)
開發速度:yii ≥ laravel > phalcon
學習成本、使用成本:yii ≥ laravel > phalcon
綜上所述,整體上Yii相對突出,適合中大型項目;ThinkPHP適合快速開發和中小型項目;phalcon適合高性能要求的項目;Laravel適合簡潔對代碼有最追求的同學。大家各取所需。
⑺ 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不同框架的優缺點
CodeIgniter 是一套給 PHP 網站開發來者使用的應用程源序開發框架和工具包。她提供一套豐富的標准庫以及簡單的介面和邏輯結構,其目的是使開發人員更快速地進行項目開發
它的好處就是小巧,幾乎不用什麼配置,兼容性好點有很簡單清晰的文檔。個人比較推薦這個框架。
但zendFrameWork目前用的人比較多一些,Zend Framework (ZF) 是用 PHP 5 來開發 web 程序和服務的開源框架。ZF 用 100% 面向對象編碼實現。所以他的可擴展性強,個人認為功能zf功能比較強大。
⑼ PHP和JAVER的優劣勢比較
PHP可以在所有主要的操作平台(UNIX,Windows,甚至是大型機)上運行,而且生來就支持各種流行的資料庫。這決定它是一種進行Web開發的非常理想的選擇:曾有運用PHP技術的網上商店稱,他們只需僱傭業余的程序員,幾天內就能夠開發出可重用的代碼。那些熟悉諸如C,C++或Java等語言的程序員們,也總是發現他們能夠在幾個小時之內就能夠進行PHP編程。 ,可想而知,轉行去php非常簡單 「PHP是構建在Web開發人員現實需求之上的....不同於其它笨重的,高負荷的方法,PHP非常輕便,是為Web開發度身定做的。它可以比其它同類技術更快,更容易的解決復雜的問題。」 Java作為一種新的編程語言,最初用於運行嵌在瀏覽器中的客戶端應用程序。在過去短短幾年中,「applet」所暴露的問題迫使SUN和其它Java開發人員為該語言尋找新的出路。其中最為突出的就是伺服器端編程,它允許Web站點連接資料庫並產生其它伺服器端的應用程序,即「servlets」。SUN最終推出了Java Server Pages(JSP)作為編寫servlets的手段。與PHP一樣,JSP在不同平台間也具有高可移植性(盡管PHP支持任何32位以及32位以上的平台,而JSP只能在安裝了Java虛擬機的平台上運行)。 然後,一個沒有編程背景的新手會發現,使用servlets編程是一件極為困難的事,原因在於該語言的復雜性以及JSP系統復雜的設計方式。 JSP的性能也存在許多待改進的地方:ZDnet的在線刊物eWeek最近的一項調查發現,PHP的運行速度差不多是JSP的3.7倍。可以說,JSP是Web環境中非常差的一種解決方案,這是因為它每秒鍾只能處理很少的事務,而且響應速度相當的慢。 ZDnet的eWeek雜志還提到: 「JSP是一項相對較新的技術,從開發工具、資源、人才方面來看,還未具有完全的市場成熟度。」......由於JSP是基於Java的,而Java由是一種強類型的語言,所以我們不得不聲明變數的類型,並在需要的地方手工轉換類型。這使得JSP成為業余程序員最難於學習的一種腳本語言。 PHP與Java協同工作 JSP僅僅是一種能夠訪問Java對象的語言罷了,認識到這一點很重要。而PHP也可以整合Java,這意味著,PHP可以象JSP一樣,成為一種能夠調用Java邏輯的腳本語言。
⑽ thinkphp框架的優缺點對於開發來說最好用什麼框架
優點,開發速度快。
答主在沒有任何對TP的了解情況下,甚至對PHP語法都半瓢水的時候,第一次接觸它,從學習到開發完成任務一個星期不到就上手並解決了。速度之快讓人很有成就感,也讓我從此愛上了開發。
缺點,太死板,不夠靈活。
他的MVC模式簡單易懂,但也限定了它在開發中不夠靈活,舉個簡單例子,對比CI可發現,CI中一個Model中可以操作多個表,但TP只能一個。
TP默認初始化了很多配置,使用起來很方便,但自然也會影響效率。但是把一些載入配置的時間拿去研究演算法,這些小影響近乎可以忽略了。
沒有最好的框架,只有適合自己的框架,如果你覺得自己技術過應,建議學習ci框架,yaf框架