php框架效率
『壹』 php框架相對原生php影響性能或效率嗎
影響不大。因為http的請求,會受到網路速度的限制。與此相比,程序內部實現造成的影響,可能是很微小的。目前流行的php框架有yii、ci等。用它們編寫一個簡單的程序,和不使用框架,運行速度幾乎沒有差別。但使用框架時也需注意一些問題。
一個網頁響應速度,和其網站架構、HTML的結構和比較耗時的操作關系較大。
其中網站架構涉及硬體設備和應用程序分布式布署的問題,對性能影響最為顯著。一些程序難以解決的性能瓶頸,要用架構設計去解決。比如資料庫讀寫分離。
優化HTML結構也是優化網站的課題之一。更為簡約的編碼,可以節約帶寬,也能加快瀏覽器渲染的速度。頁面位元組大小,是前端設計的重要指標。非同步載入和代碼壓縮,是減少網頁下載時間的重要手段。
程序比較耗時的操作,如資料庫查詢、圖片處理、壓縮文件等。其中資料庫的因素較為普遍。這里要提到一個框架的問題。yii框架自帶的資料庫模型非常強大,有了它我們基本上不用寫sql語句。但是,它自己生成的SQL語句不一定是最佳的。為了保證網站性能,關鍵的查詢需要自己把握。而且比較復雜的抽象,也會降低性能。它的官方文檔中,也不建議在大型網站中使用模型。
綜上,框架的特性要選擇性地使用。使用前要仔細閱讀文檔。優化網站要考慮多種因素,而不是僅僅關心程序的實現。要杜絕對程序效率影響不大的"微優化"。
『貳』 PHP哪個框架最好_php開發框架排行
有以下幾種:Canphp,KYPHP,SpeedPHP
php框架介紹:
框架就是通過提供一個開發Web程序的基本架構,PHP開發框架把PHPWeb程序開發擺到了流水線上。換句話說,PHP開發框架有助於促進快速軟體開發(RAD),這節約了你的時間,有助於創建更為穩定的程序,並減少開發者的重復編寫代碼的勞動。這些框架還通過確保正確的資料庫操廳含桐作以及只在表現層編程的方式幫助初學者創建穩定的程序。PHP開發框架使得你可以花更多的時間去創造真正的Web程序,而不是編寫重復性的代碼。
三種框架簡介:
Canphp是一個中國開源的php框架,主要的設計理念就是為了追求簡單,減少php初學者的學習成本,而且追求高效率,模版類不提供其他標簽,直接應用php的源代碼,還有它是微內核設計,移植性強,鬆散耦合等特點,能集成到你任何一個系統裡面。其中集成的http類相當的強大,採集圖片速度相當的快,為什麼這樣呢?因為適用了模擬非同步多進程的原理。
KYPHP是一個中國開源的PHP框架,kyphp嚴格遵守OOP和MVC的理念,具有控制項化、可擴展性強。kyphp設計理念是自老知由、簡單。既可以用php源碼編程,也可以使用標簽,支持多語言,多資料庫,多皮膚,多模型部署等,為程序員節省更多的時間。.
SpeedPHP是一款全功能的國產PHP應用框架系統。她以「快速開發、快速學習、快速運行」為理念,在提高團隊開發效率、容易學習及使用、輕量級架構以增加執行速度等方面有著突出的表現。
SpeedPHP框架是從實際運行的扮坦商業系統中取其精華而成的,在穩定性和運行速度上都非常出色;同時有著清晰的架構,更有利於提高團隊開發效率,教程眾多,入門容易,號稱最適合初學者的PHP框架,快速帶你進入PHP高手的行列。
『叄』 PHP 框架哪個更好一點CodeIgniter 怎麼樣
PHP框架有很多,各有鍵攜其優點。
CodeIgniter簡單,易埋則用,效率特彎亮棚高的超好用框架,尤其是現在3.X之後更是將效率,易用,穩定做到了極致。
『肆』 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開發框架有哪些
你好,首先我們談一談「框架」是什麼。「php開發框架」,顧名思義,就是要可靠、安全、高效率地搭建出web應用,這也是目的。
那麼,框架的優勢在哪裡?我們為什麼要用框架?——因為框架可以將資料庫、緩存、會話等功能組建合並為一,方便使用。
下面我們聊一聊比較流行的三個php開發框架。
Lavarel:這是一整套語法簡潔,好理解的web開發框架。主要的優勢集中體現在後期的支持、文檔的全備,還有活躍的社區上。學習Lavarel,需要先對PHP語言、面向對象、資料庫的操作有一個基本的學習基礎。ThinkPHP:基於最開始即沿用的簡單結構——mvc和面向對象的輕量級PHP開發框架。簡單的語法下增添了原創功能和特性,強力支持了web應用的開發。
Yii:極其優化的性能,對於任何種類的項目而言都很容易露一手。文檔功能十分詳盡,擁有一切你需要學習的信息。不管是開源的還是私有的應用,都可以自消罩返由地使用!不論從法律還是財務上來講!
結語:
很多朋友都容易有這樣的疑問——這三個框架哪個更好?這里我拿飢簡單回答一下,沒有好不好,只有適不悶吵適合,如果頭子說yii好,必定就是yii主導地位。
最後分享一個程序猿大大滴提高效率的工具,答案就是——單身。
好,下回見
『陸』 國外主流PHP框架對比評測
最近簡單的使用了目前在國內用的比較多的幾個主流國外PHP框架(不包括國內框架) 大致對這些框架有個直觀上的感受 簡單分享一下 對於哪些做框架選型的時候 權當一個參考
主要參考的框架包括 CodeIgniter CakePHP ZendFramework Symfony 我對很多框架也沒有認真使用 只是簡單試用了一下 可能很多看法不成熟或者是錯誤的 請大家指正 一起成長
CodeIgniter
優點
配置簡單 全部的配置使用PHP腳本來配置 執行效率高 具有基本的路由功能 能夠進行一定程度的路由 具有初步的Layout功能 能夠製作一定程度的界面外觀 資料庫層封裝的不錯 具有基本的MVC功能
快速簡潔 代碼不多 執行性能高 框架簡單 容易上手 學習成本低 文檔詳細 自帶了很多簡單好用的library 框架適合小型應用
缺點
把Model層簡單的理解為資料庫操作
框架略顯簡單 只能夠滿足小型應用 略微不太能夠滿足中型應用需要
評價
總體來說 拿CodeIgniter來完成簡單快速的應用還是值得 同時能夠構造一定程度的layout 便於模板的復用 數據操作層來說封裝的不錯 並且CodeIgniter沒有使用很多太復雜的設計模式 執行性能和代碼可讀性上都不錯 至於附加的 library 也還不錯 簡潔高效
CakePHP
優點
CakePHP是最類似於RoR的框架 包括設計方式 資料庫操作的Active Record方式 設計層面很優雅 沒有自帶多餘的 library 所有的功能都是純粹的框架 執行效率還不錯 資料庫層的 hasOne hasMany 功能很強大 對於復雜業務處理比較合適 路由功能 配置功能還不錯 自動構建腳手架(scaffold)很強大 適合中型應用 基本實現過了MVC每一層 具有自動操作命令行腳本功能
文檔比較全 在國內推廣的比較成功 大部分都知道CakePHP 學習成本中等
缺點
CakePHP非常嚴重的問題是把Model理解為資料庫層操作 嚴重影響了除了資料庫之外的操作能力
CakePHP的cache功能略顯薄弱 配置功能稍嫌弱 CakePHP不適合大型應用 只適合中型應用 小型應用來說略微的學習成本高了點
評價
總體來說CakePHP框架代表了PHP框架很重要的一個時代和代表 並且目前發揮著很重要的作用 不少自己寫的框架都模仿了CakePHP的方式 是個里程碑式的產品 CakePHP透露著RoR的敏捷橘猜開發方式和把資料庫操作認為是唯一Model的設計思想 作為開發快速應用和原型是絕好的工具 同樣 用來做Web 網站的開發框架 也是值得選擇的
Zend Framework
優點
官方出品 自帶了非常多的 library 框架本身使用了很多設計模式來編寫 架構上很優雅 執行效率中等 MVC設計中 比較簡潔 具有路由功能 配置文件比較強大(能夠處理XML和php INI) 各種 library 很強大 是所有PHP框架中各種功能最全面的 包括它不僅是一個框架 更是一個大類庫(取代PEAR) 這是它的主要特色 能夠直觀的支持除資料庫操作之外的Model層(比 CodeIgniter 和 CakePHP 強) 並且能夠很輕易的使用Loader功能載入其他新增加的Class Cache功能很強大 從前端Cache到後端Cache都支持 後端Cache支持Memcache APC SQLite 文件等等方式 資料庫操作功能很強大 支持各種驅動(適配器)
文檔很全 在國內社區很成熟 並且目前不少Web 網站在使用 學習成本中等
缺點
MVC功能完成比較弱 View層簡單實現(跟沒實現一樣) 無法很強大的控制前端頁面
沒有自動化腳本 創建一個應用 包括入口文件 全部必須自己手工構建 入門成本圓仔型高
Zend Framework 作為一個中型應用框架問題不大 也能夠勉強作為大型應用的框架 但是作為一個很成熟的大型PHP框架來說 還需要一些努力
評價
戚如作為官方出品的框架 Zend Framework的野心是可以預見的 想把其他框架擠走 同時封裝很多強大的類庫 能夠提供一站式的框架服務 並且他們的開發團隊很強大 完全足夠有能力開發很強大的產品出來 所以基本可以確定的是Zend Framework前途無量 如果花費更多的時間去完善框架 同樣的 Zend Framework架構本身也是比較優雅的 說明Zend官方是有很多高手的 設計理念上比較先進 雖然有一些功能實現的不夠完善 比如View層 自動化腳本等等 這些都有賴於未來的升級 總體來說Zend Framework是最值得期待的框架 當然 你目前要投入你的項目中使用也是完全沒問題的
Symfony
優點
Symfony 是我了解的PHP框架中功能最強大的 而且我使用時間比較長 但是很多功能還是沒有挖掘出來 它完整實現了MVC三層 封裝了所有東西 包括 $_POST $_GET 數據 異常處理 調試功能 數據檢測 包含強大的緩存功能 自動載入Class(這個功能很爽) 強大的i n國家化支持 具有很強大的view層操作 能夠零碎的包含單個多個文件 非常強大的配置功能 使用yml配置能夠控制所有框架和程序運行行為 強大到讓人無語 能夠很隨意的定義各種自己的class 並且symfony能夠自動載入(auto load)這些class 能夠在程序中隨意調用 包含強大的多層級項目和應用管理 Project > Application > Mole > Action 能夠滿足一個項目下多個應用的需要 並且每層可以定義自己的類庫 配置文件 layout 非常強大的命令行操作功能 包括建立項目 建立應用 建立模塊 刷新緩存等等
Symfony絕對是開發大型復雜項目的首選 因為使用了Symfony 將大大節約開發成本 並且多人協作的時候 不會出現問題 在Project級別定義好基礎Class以後 任何模塊都能夠重用 大大復用代碼
缺點
資料庫操作model採用了重量級的propel和creole 不過在我測試的版本中已經把他們移到了addon里 可用可不用
緩存功能無法控制 每次開發調試總是緩存 需要執行 symfony cc symfony rc 來清除和重建緩存
效率不是很高 特別是解析模板和讀取配置文件的過程 花費時間不少
學習成本很高 並且國內沒有成熟的社區和文檔 連中文手冊都沒有 相應的要掌握所有功能 需要花費比較多的時間
評價
Symfony絕對是企業級的框架 唯一能夠貌似能夠跟java領域哪些強悍框架抗衡的東西 強悍的東西 自然學習復雜 但是相應的對項目開發也比較有幫助 自然是推薦復雜的項目使用Symfony來處理 覺得是值得 後期的維護成本比較低 復用性很強 相應的如果使用Symfony的應該都是比較復雜的互聯網項目 那麼相應的就要考慮關於資料庫分布的問題 那麼就需要拋棄Symfony自帶的資料庫操作層 需要自己定義 當然了 Symfony支持隨意的構造model層
總結
以上數款框架 各有特色 而且都是開源項目 不過框架針對的項目不一樣 一般來說 CodeIngiter 比較適合小型項目 CakePHP 和 Zend Framework 比較適合中型項目 Symfony 比較適合大型重量級項目 在項目選型的時候 要充分考慮框架的可以定製性 擴展性 因為每個項目都無法確定你是否會隨著需求的變化進行改變
相對來說 Zend Framework 和 Symfony 應對變化的能力比較強 特別是能夠隨意定製 model 層的Class 能夠非常方便增加自己業務或者數據處理類 我是個人比較推薦在中大型項目中使用的框架
CodeIngiter 和 CakePHP 在中小型項目中同樣能夠發揮重大作用 快速開發和原型構建 非常適合目標不清晰的原型項目的開發
當然了 也許 自己寫一個框架更適合
lishixin/Article/program/PHP/201311/21441
『柒』 印刷行業進銷存web項目,在php與java中,用什麼樣的框架能開發效率更高學習成本維護成本更低
從系統功能來看,這個應該算是企業應用,系統不是從大小來區分是不是企業系統的,而是從功能。何為企業應用,即是針對物質資源管理(物流)、人力資源管理(人流)、財務資源管理(財流)、信息資源管理(信息流)集成一體化的企業管理軟(ERP)。CRM即客戶關系管理系統,是面向客戶的。
下面說一下我對java以及php的了解與認識。
我本身是從事java方面的,做的也都是公司內部物流管理一類的系統。
做了幾年的項目大多都是用starts框架,java的編程思想是以數據為模型,實現業務邏輯與表示分開,在沒有MVC模式的框架前一直都是以java+servlet+jsp實現MVC。隨著後來starts的出現,大多都開始用starts,starts也並不能說是最好的,比它好的框架現在有很多,只能說它先入為主了,對於框架這一塊就不用我廢話了。如果用java實現一個項目,相對來說要繁瑣一些,因此花費的工時也相對的要長,但是java有很好的可移植性 ,可維護性,代碼復用性。並且層次分的很清晰,業務邏輯和表示可以完全分開。
現在隨著面向介面編程的思想,降低了代碼與代碼之間的依賴性,更提高了項目的移植性。總而言之,java開發的項目,維護性好,開發效率也不算低,對學習也有很大幫助,主要是學習其中的思想。
PHP這種語言以前也有學過,但工作中沒有應用過。
用php開發項目也是不錯的,現在網上很多主流的網站都是php的,它的優點是開發效率高,非常適合門戶性網站,以前我也幫別人做過一個小網站,但是是用的.net,本來想用php了,但是考慮現在支持.net的空間比較多最後用了.net。
雖然php也有類似mvc的框架,但它那個mvc就類似一個include。但是對它簡單容易上手,好配置很是青睞的。
兩種語言都可以在linux上運行,如果是企業應用的話,本人更傾向java,如果是網站一類傾向於.net或者php.
對於java來說,現在有很好的IDE,如果你工程設計合理的話會大大的提高你的開發效率,比如如果你選擇hibernate做資料庫訪問層,那會減少一部分工作量。這也就是java的優勢之一,有很多封裝好的東西你可以直接拿過來用。
以上拙見,僅是個人觀點,僅供參考。
.net和php很類似,asp.net和java就很相近了。
ASP使用VBS/JS這樣的腳本語言混合html來編程,而那些腳本語言屬於弱類型、面向結構的編程語言,而非面向對象。
ASP.NET是編譯性的編程框架,運行是伺服器上的編譯好的公共語言運行時庫代碼,可以利用早期綁定,實施編譯來提高效率。
java強勢的地方是j2ee中的技術,在企業應用中有很好的解決方案。
在某個方面都有一些技術點。
我說的.net不是asp.net可能給你造成了誤解,對於asp.net我也只是了解,可以說asp.net封裝的很好,asp.net的控制項是很強大的,但是有時候覺得它真的不是很靈活,從MVC的角度來看,我覺得它還是不如java的清晰.雖然它也是面向對象的,但在數據這一塊來說感覺還是沒有完全分離開。
也可能是這么多年來java的設計模式固化在我的思想當中了吧。
『捌』 php 開發 比 java 快 在哪
一些Java可以做的事情Php做不了或者說要藉助另外的工具才可以做,要但就開發網站這個事情來說,Php確實是要比Java效率高,尤其是相對簡單的項目。
首先,Java的架構要比Php復雜,先不說各種開發框架,Jsp和Class文件要分開吧,連接資料庫要用ORM吧,要比拆渣對各種常用開源包的版本吧,http伺服器下層要servlet容器吧。而Php架構就非常簡單,理論上寫好Php文件,往http伺服器里一放就可以,讀寫mysql資料庫也幾乎不需要任何額外工具。至於MVC,開發嚴謹的項目Php和Java兩者都需要。面向對象編程Java必須一直堅持,而php很多時候只是部分這樣做,其餘大部分則採用面向過程方式(盡管這部分很多時候也披著面向對象的外衣)。
第二,Php採用若類型變數,不管你要定義什麼變數,一個$足以,轉化問題也幾乎不用管,Java則不行,數字就是數字,字元串就是字元串,這是Java效率高的一個原因,也是開發仿枝比Php慢的一個原因。
第三,低成本Java項目解決不了網站高並發的問題。單個Tomcat、Jetty或Jboss能支持1000個並發就非常不容易,別說跟支持php的nginx比,就是apache也沒法比。當然,如果投入超過百萬weblogic那又不一樣,注意,這個超過百萬是單獨投入在httpd伺服器和servlet容器上的,跟具體開發一毛錢關系也沒有。
Java的運算效率高於Php,但網站項目的大量運算都是在資料庫層面發生的,Java的這個優勢發揮不出來。舉個例備御敏子,有10萬篇文章,比對他們的相關性,這個事情Java做起來就比Php要適合很多。
『玖』 為什麼學PHP需要框架PHP框架是做什麼用的
1.對於PHP初學者從框架開始學習是個很好的方法。
很多功能與其東拼西湊找開源庫不如直接用現成的框架來解決,而且用框架還能保證可靠性和安全性,畢竟那是經過長時間應用檢驗的。
而且,用框架的更重要的原因是保證設計的合理性和可擴展性。如果不用框架難免會有結構設計方面的bug,做出來的產品難以維護,更難以擴展。
如果要從頭開始寫個項目,最簡單快捷的方法就是用框架,而且框架選擇也是很多樣的,可以用Zend這樣的大型框架,也可以選擇一些codeigniter這樣的開源輕量框架(CodeIgniter / EllisLab)。
2.對於PHP熟練者不一定非得用框架,很多優秀的PHP產品都沒有用框架。
框架的好處是規范代碼,統一架構,方便團隊開發和維護管理,代碼封裝了很多常用功能,開發的時候直接使用,並且不用考慮底層架構,提升開發效率。
所以框架適合開發大多數普通項目。項目太小,沒必要用框架。項目太大,需按具體業務設計架構,框架不一定好用。
3.所以,要根據自身情況而定,不一定非要使用框架。
『拾』 使用過哪些php框架.試描述其優劣點
1、BroPHP框架:
優點:輕量級學習型框架,配置簡單,操作簡單,容易上手,提供了比較全面的文檔。 缺點:
2、ThinkPHP框架:
優點:功能比較全面,配置相對比較簡單,操作相對比較簡單,容易上手。
缺點:麻煩的URL路由,不支持模板的部分緩存,提供的操作方法太多,新手不知如何選擇,文檔不夠全面。
3.CodeIgniter框架:
優點:
1. 配置簡單,全部的配置使用PHP腳本來配置,執行效率高;具有基本的路由功能,能夠進行一定程度的路由;具有初步的Layout功能,能夠製作一定程度的界面外觀;資料庫層封裝的不錯,具有基本的MVC功能
2. 快速簡潔,代碼不多,執行性能高,PHP框架簡單,容易上手,學習成本低,文檔詳細;自帶了很多簡單好用的library,框架適合小型應用
缺點:
1. 把Model層簡單的理解為資料庫操作
2. PHP框架略顯簡單,只能夠滿足小型應用,略微不太能夠滿足中型應用需要