Yii是什么-創(chuàng)新互聯(lián)

這篇文章主要介紹Yii是什么,文中介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們一定要看完!

成都創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價比玉環(huán)網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式玉環(huán)網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋玉環(huán)地區(qū)。費用合理售后完善,10余年實體公司更值得信賴。

Yii是一個高性能的,適用于開發(fā)WEB2.0應(yīng)用的PHP框架。
Yii自帶了豐富的功能 ,包括MVC,DAO/ActiveRecord,I18N/L10N,緩存,身份驗證和基于角色的訪問控制,腳手架,測試等,可顯著縮短開發(fā)時間

官方網(wǎng)站:http://www.yiiframework.com/

Yii快速

Yii 只加載您需要的功能。它具有強(qiáng)大的緩存支持。它明確的設(shè)計能與 AJAX 一起高效率的工作。

Yii安全

Yii 的標(biāo)準(zhǔn)是安全的。它包括了輸入驗證,輸出過濾,SQL 注入和跨站點腳本的預(yù)防。

專業(yè)

Yii 可幫助您開發(fā)清潔和可重用的代碼。它遵循了 MVC 模式,確保了清晰分離邏輯層和表示層。

Yii Framework是一個基于組件、用于開發(fā)大型 Web 應(yīng)用的高性能 PHP 框架。Yii提供了今日Web 2.0應(yīng)用開發(fā)所需要的幾乎一切功能。Yii是最有效率的PHP框架之一。Yii是創(chuàng)始人薛強(qiáng)的心血結(jié)晶,于2008年1月1日開始開發(fā)。

Yii是一個基于組件的高性能PHP框架,用于開發(fā)大型Web應(yīng)用。Yii采用嚴(yán)格的OOP編寫,并有著完善的庫引用以及全面的教程。從 MVC,DAO/ActiveRecord,widgets,caching,等級式RBAC,Web服務(wù),到主題化,I18N和L10N,Yii提供了今日Web 2.0應(yīng)用開發(fā)所需要的幾乎一切功能。事實上,Yii是最有效率的PHP框架之一。
Yii是一個高性能的PHP5的web應(yīng)用程序開發(fā)框架。通過一個簡單的命令行工具 yiic 可以快速創(chuàng)建一個web應(yīng)用程序的代碼框架,開發(fā)者可以在生成的代碼框架基礎(chǔ)上添加業(yè)務(wù)邏輯,以快速完成應(yīng)用程序的開發(fā)。

Yii優(yōu)點

Yii容易學(xué)習(xí)和使用。你只需要知道PHP和面向?qū)ο缶幊蹋憧梢院芸焐鲜?,而不必事先去學(xué)習(xí)一種新的架構(gòu)或者模板語言。
用Yii的開發(fā)速度非常之快,除框架本身之外,需要為應(yīng)用所寫的編碼極少。事實上這是高效的開發(fā)框架之一。
Yii 具有高度的可重用性和可擴(kuò)展性,是純粹的面向?qū)ο蟮摹ii中的一切都是獨立的可被配置,可重用,可擴(kuò)展的組件。更重要的是Yii有著越來越多的擴(kuò)展庫。主要由使用者貢獻(xiàn)出的組件組成,這可能有助于大大減少您的開發(fā)時間。Yii 有著豐富的功能. 從 MVC, DAO/ActiveRecord, 到 主題化, 國際化 和本地化, Yii 提供了幾乎所有今天的Web 2.0應(yīng)用程序開發(fā)所需的功能。

在Yii參考手冊是Yii完備的文檔,有著你學(xué)習(xí)和掌握它所需要的任何信息。
Yii一開始就精心設(shè)計,以適應(yīng)復(fù)雜的WEB應(yīng)用開發(fā)。他不是一些項目的副產(chǎn)品或者第三方集成。而是融合了作者豐富的 Web 應(yīng)用開發(fā)經(jīng)驗和其它熱門 Web 框架和應(yīng)用的優(yōu)秀思想的結(jié)晶。
最后,但并非不重要,Yii是免費的,Yii遵循新的BSD許可。它確保了它的第三方開發(fā)也循序和BSD相兼容的許可。這意味著無論從法律上還是財務(wù)上來說,您都可以自由的使用yii來開發(fā)任何一個開源的或者私有的應(yīng)用。

特性

Yii幾乎擁有了當(dāng)今Web 2.0應(yīng)用發(fā)展的全部特性。下面是這些特性的一個簡短的清單。
模型-視圖-控制器(MVC)設(shè)計模式:Yii在WEB編程中采用這一成熟的技術(shù)從而可以更好的將邏輯層和表現(xiàn)層分開。
數(shù)據(jù)庫訪問對象(DAO)和Active Record:Yii允許開發(fā)者模型數(shù)據(jù)庫中的數(shù)據(jù)對象,從而減少他們在寫很長和重復(fù)的SQL語句上的精力。
與jQuery整合:作為最流行的JavaScript框架之一,jQuery可以編寫高效而靈活的JavaScript接口。
表單輸入和驗證:YII使得收集表單輸入非常容易和安全。 Yii擁有一套確保數(shù)據(jù)的有效性的驗證器,它也有輔助方法和部件,顯示驗證失敗時的錯誤。
Web 2.0部件:由jQuery的支持,YII配備了一套Web 2.0的部件,如自動完成輸入字段,TreeView等等。
身份驗證和授權(quán):Yii具有內(nèi)置的身份驗證支持。它也支持通過分層的基于角色的訪問控制(RBAC)的授權(quán)。
主題:它能夠瞬間改變一個Yii應(yīng)用的視圖。
Web服務(wù):Yii支持自動生成復(fù)雜的WSDL服務(wù)規(guī)范和管理Web服務(wù)請求處理。
國際化(I18N)和本地化(L10N):Yii支持消息轉(zhuǎn)換,日期和時間格式,數(shù)字格式和界面本地化。
分層緩存方案:Yii支持?jǐn)?shù)據(jù)緩存,頁面緩存,片段緩存和動態(tài)內(nèi)容。緩存的存儲介質(zhì),可以輕松地更改而不觸及應(yīng)用程序代碼。
錯誤處理和日志記錄:錯誤的處理很好的呈現(xiàn)出來,日志信息可以分類,過濾并分配到不同的位置。
安全:Yii配備了許多安全的措施,以幫助安全的Web應(yīng)用程序,以防止網(wǎng)絡(luò)攻擊。這些措施包括跨站點腳本(XSS)預(yù)防,跨站點請求偽造(CSRF)預(yù)防,Cookie篡改預(yù)防等。
符合XHTML:Yii的組件和命令行工具生成的代碼符合XHTML標(biāo)準(zhǔn)。
自動代碼生成:Yii提供了可以自動生成的代碼的工具,根據(jù)你的需要,例如生成一個程序骨架,CRUD應(yīng)用等等。
完全面向?qū)ο螅篩ii框架堅持嚴(yán)格的面向?qū)ο缶幊谭妒?。它沒有定義任何全局函數(shù)或變量。而且,它定義的類層次結(jié)構(gòu)允許較大的可重用性和定制。
友好的使用第三方代碼:Yii精心設(shè)計讓它第三方代碼非常好的工作。例如,你可以在你的Yii應(yīng)用程序中使用PEAR或Zend Framework的代碼。
詳細(xì)的文檔:每一個單一的方法或?qū)傩远挤浅G宄挠涗浿M瑫r提供了一個全面的教程和一些新手教程。
擴(kuò)展庫:Yii提供了一個組成用戶提供組件的一個擴(kuò)展庫,這使得上述功能列表是永無止境的。

關(guān)于Yii

Yii是一個基于組件、用于開發(fā)大型 Web 應(yīng)用的高性能 PHP 框架。在WEB開發(fā)中Yii可以較大限度的實現(xiàn)代碼重用,極大的提高開發(fā)的速度。名字Yii(讀音是Yee or [ji:],應(yīng)該就是“易”的讀音 )代表的是容易(easy),高效(efficient)和可擴(kuò)展(extensible)
環(huán)境需求
要運行一個 Yii 驅(qū)動的 Web 應(yīng)用,你需要有一個支持 PHP 5.1.0 或以上版本的 Web 服務(wù)器。
對于打算使用 Yii 的開發(fā)者來說,懂得面向?qū)ο缶幊蹋∣OP)會非常有幫助。因為 Yii 是一個純 OOP 的框架。
適用范圍
Yii 是一個通用的 Web 編程框架,可以用于開發(fā)幾乎所有的 Web 應(yīng)用。由于它是輕量級的且具備了成熟的緩存解決方案,它特別適用于開發(fā)高流量的應(yīng)用,例如門戶,論壇,內(nèi)容管理系統(tǒng)(CMS),電子商務(wù)系統(tǒng)等等。
與同類產(chǎn)品比較
和多數(shù)PHP框架類似,Yii 是一個 MVC 的框架。
Yii 以其優(yōu)異的性能,豐富的功能和清晰的文檔勝出其他框架。Yii 從一開始就仔細(xì)設(shè)計以適合嚴(yán)謹(jǐn)?shù)?Web 應(yīng)用開發(fā)。它既不是一個其他項目的衍生品,也不是一個第三方工作的組合。 它是作者豐富的 Web 應(yīng)用開發(fā)經(jīng)驗和對大多數(shù)流行的 Web 編程框架與應(yīng)用的研究與思考的成果。

性能

yii性能
Yii是一個高性能的框架,以下的圖表展示了與其他流行的PHP框架比較下Yii的高效率。在這個圖表中, RPS代表“每秒請求”,描述了此框架每秒執(zhí)行多少個請求。這個數(shù)字越大,此框架的性能越高,我們可以看到,在這個比較中 Yii 勝過其他框架。The performance advantage of Yii is especially significant when the widely used APC extension is enabled.
Performance alone is not the whole story (otherwise we should all use plain HTML or PHP). With such superior performance, Yii still provides a very rich feature setwhich can greatly improve your development efficiency.
為什么Yii如此之快
Yii如此快速是因為它廣泛地使用lazy loading技術(shù)。比如, 直到第一次使用到這個類,才會包含進(jìn)來;直到對象第一次訪問,才會創(chuàng)造這個對象。Other frameworks suffer from the performance hit because they would enable a functionality (e.g. DB connection, user session) no matter it is used or not during a request.
標(biāo)準(zhǔn)設(shè)置
下面我們解釋怎樣設(shè)計基準(zhǔn)應(yīng)用并且得到上面的RPS結(jié)果.
基準(zhǔn)請求
Since our goal is to compare the minimal overhead of each framework, the benchmark application for each framework should be the simplest one. We choose to display a "Hello World" text string by placing an echo statement in the default action of each application. Any additional framework features (e.g. session) are disabled to ensure fairness of the comparison. To obtain a copy of the benchmark applications, please check out the phpmark project.
為什么用“Hello World”
我們做“hello world”的測試主要是為了達(dá)到我們的目標(biāo),如:找出每個框架地最小代價。很多人抱怨說應(yīng)用程序“hello world”很沒意義,因為在真實世界的應(yīng)用程序經(jīng)常需要去涉及更復(fù)雜的任務(wù),比如數(shù)據(jù)庫查詢。這是不對的。實際上,尤其是在一些大規(guī)模的web2.0應(yīng)用程序中,我們經(jīng)常遇到的情況通常是相當(dāng)?shù)亟咏癶ello world”。例如:應(yīng)用程序要響應(yīng)ajax請求返回當(dāng)前服務(wù)器的時間。頁面有大部分內(nèi)容在緩存,應(yīng)用程序只需要抓取緩存的內(nèi)容并顯示之。
另一個用“hello world”的原因是當(dāng)引用更復(fù)雜(如:數(shù)據(jù)庫查詢)的特征時,對照的清晰將很難保證。例如:框架可以在數(shù)據(jù)庫查詢執(zhí)行得非常有效率,但缺少緩存方案。當(dāng)另一個框架在數(shù)據(jù)庫查詢上稍慢,卻有高級的緩存特征來緩和系統(tǒng)損耗??偠灾邪颂嗟囊蛩貋磉M(jìn)行清晰的對比。
標(biāo)準(zhǔn)工具和環(huán)境
用ApacheBench工具的指令“ab –t 30 -c 10 URL”來獲取RPS編號(如:在并發(fā)級數(shù)10運行test 30秒)。為了獲得每個框架的編號,我們先停止再啟動Apache WEB服務(wù)器來避免干擾。還要運行測試程序幾次來“預(yù)熱”測試環(huán)境。在phpmark project中,有個叫benchmark. sh的shell script使基準(zhǔn)程序自動化。

Credits

Yii 的很多想法來自其他著名 Web 編程框架和應(yīng)用程序。下面是一個簡短的清單。
Prado:這是 Yii 的主要思想來源。Yii 采用了基于組件和事件驅(qū)動編程模式,數(shù)據(jù)庫抽象層,模塊化的應(yīng)用架構(gòu),國際化和本地化,和許多它的其他特點和功能。
Ruby on Rails:Yii 繼承它的配置的思想。還引用它的 Active Record的 ORM設(shè)計模式。
jQuery:這是集成在 Yii 為基礎(chǔ)的 JavaScript 框架。
Symfony:Yii 引用它的過濾設(shè)計和插件架構(gòu)。
Joomla:Yii 引用其模塊化設(shè)計和信息翻譯方案。

以上是“Yii是什么”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

網(wǎng)頁名稱:Yii是什么-創(chuàng)新互聯(lián)
網(wǎng)站地址:http://muchs.cn/article36/psppg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供動態(tài)網(wǎng)站、全網(wǎng)營銷推廣、外貿(mào)網(wǎng)站建設(shè)、定制網(wǎng)站、網(wǎng)站建設(shè)微信小程序

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)