這篇文章主要介紹yii1.1和yii2.0有哪些區(qū)別,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
10余年的嘉陵網(wǎng)站建設經(jīng)驗,針對設計、前端、開發(fā)、售后、文案、推廣等六對一服務,響應快,48小時及時工作處理。全網(wǎng)營銷推廣的優(yōu)勢是能夠根據(jù)用戶設備顯示端的尺寸不同,自動調(diào)整嘉陵建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設計,從而大程度地提升瀏覽體驗。創(chuàng)新互聯(lián)建站從事“嘉陵網(wǎng)站設計”,“嘉陵網(wǎng)站推廣”以來,每個客戶項目都認真落實執(zhí)行。
區(qū)別:1、Yii2.0完全擁抱Composer,yii1.1沒有;2、Yii2.0幾乎每一個核心類都引入了命名空間,且1.1版類名前綴 “C” 已經(jīng)不再使用;3、Yii2.0把1.1中的CComponent類拆分成了兩個類。
2.0 版框架是完全重寫的,在 1.1 和 2.0 兩個版本之間存在相當多差異。因此從 1.1 版升級并不像小版本間的跨越那么簡單,通過本指南你將會了解兩個版本間主要的不同之處。
安裝
Yii 2.0 完全擁抱 Composer,它是事實上的 PHP 依賴管理工具。核心框架以及擴展的安裝都通過 Composer 來處理。
PHP 需求
Yii 2.0 需要 PHP 5.4 或更高版本,該版本相對于 Yii 1.1 所需求的 PHP 5.2 而言有巨大的改進。因此在語言層面上有很多的值得注意的不同之處。下面是 PHP 層的主要變化匯總:
命名空間
匿名函數(shù)
數(shù)組短語法 [...元素...] 用于取代 array(...元素...)
視圖文件中的短格式 echo 標簽 =,自 PHP 5.4 起總會被識別并且合法,無論 short_open_tag 的設置是什么,可以安全使用。
SPL 類和接口
延遲靜態(tài)綁定
日期和時間
Traits
intl Yii 2.0 使用 PHP 擴展 intl 來支持國際化的相關功能。
命名空間
Yii 2.0 里最明顯的改動就數(shù)命名空間的使用了。幾乎每一個核心類都引入了命名空間,比如 yii\web\Request。1.1 版類名前綴 “C” 已經(jīng)不再使用。
當前的命名方案與目錄結(jié)構(gòu)相吻合。例如,yii\web\Request 就表明對應的類文件是 Yii 框架文件夾下的 web/Request.php 文件。
有了 Yii 的類自動加載器,你可以直接使用全部核心類而不需要顯式包含具體文件。
組件(Component)與對象(Object)
Yii 2.0 把 1.1 中的 CComponent 類拆分成了兩個類:[[yii\base\Object]] 和 [[yii\base\Component]]。[[yii\base\Object|Object]] 類是一個輕量級的基類,你可以通過 getters 和 setters 來定義對象的屬性。
[[yii\base\Component|Component]] 類繼承自 [[yii\base\Object|Object]],同時進一步支持 事件 和 行為。
事件(Event)
在 Yii 1 中,通常通過定義 on 開頭的方法(例如 onBeforeSave)來創(chuàng)建事件。而在 Yii 2 中,你可以使用任意的事件名了。同時通過調(diào)用 [[yii\base\Component::trigger()|trigger()]] 方法來觸發(fā)相關事件:
$event = new \yii\base\Event; $component->trigger($eventName, $event);
要給事件附加一個事件事件處理器,需要使用 [[yii\base\Component::on()|on()]] 方法:
$component->on($eventName, $handler); // 解除事件處理器,使用 off 方法: // $component->off($eventName, $handler);
以上是“yii1.1和yii2.0有哪些區(qū)別”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道!