Yii有兩個最主要的版本:Yii1.1和Yii2.0。Yii1.1是老的版本,在寫這本書時,最新版本號是1.1.15。 Yii1.1現(xiàn)在已經(jīng)不再進(jìn)行新的開發(fā)了,官方只是進(jìn)行維護(hù),更新安全漏洞等,不會再有新的功能特性的引入。
而Yii2.0是在Yii1.1的基礎(chǔ)上完全推倒重新寫的一個框架,吸收了許多當(dāng)前最新的技術(shù)和開發(fā)中的主流約定, 是最新一代Web開發(fā)框架的代表。 (推薦學(xué)習(xí):yii教程)
運(yùn)用了PHP命名空間、Trait、 PSR標(biāo)準(zhǔn) 、Composer和Bower包管理器, 等新技術(shù)新標(biāo)準(zhǔn)。
實(shí)現(xiàn)了 依賴注入和依賴注入容器 以及 服務(wù)定位器(Service Locator) 等新架構(gòu)新模式。
Yii2.0格外重視安全性,采取一系列手段有效防止SQL注入、XSS攻擊、CSRF攻擊、cookie篡改等。
廣泛支持各類SQL和NOSQL數(shù)據(jù)庫,高效實(shí)現(xiàn)了Active Record等數(shù)據(jù)庫查詢、操作界面,提供數(shù)據(jù)庫遷移、復(fù)制、 讀寫分離等功能。
只需極少量的代碼就可以實(shí)現(xiàn)完全符合標(biāo)準(zhǔn)的RESTful API。
支持各種粒度、介質(zhì)的緩存機(jī)制。
提供多種認(rèn)證和授權(quán)手段基于cookie和基于令牌的認(rèn)證,RBAC等權(quán)限控制手段,支持OpenID,OAuth1,OAuth2等。
支持Bootstrap,jQuery UI,提供了豐富的Widget掛件供使用。
完善的國際化支持,提供符合 ICU標(biāo)準(zhǔn) 的時間、復(fù)數(shù)等格式化工具和消息翻譯、視圖翻譯等功能。
除了支持Twig和Smarty 2個主流的PHP模版引擎外,開發(fā)者還可以自己寫擴(kuò)展支持其他引擎。
為苦命碼農(nóng)提供了 Yii調(diào)試工具條 和 Gii代碼生成器 以及 文檔生成器 等高效開發(fā)工具。
集成了 Codeception 和 Faker,并與DB Migration相結(jié)合,提供了一個fixture框架,方便測試開發(fā)。
提供了一個簡單應(yīng)用模板和高級應(yīng)用模板,適用于不同的開發(fā)場景,都可以幫助開發(fā)者盡快搭建起自己的應(yīng)用。