yii1.0和2.0的區別

yii1.0和2.0的區別

請注意,Yii 2.0 引入了很多本章并沒有涉及到的新功能。 強烈建議你通讀整部權威指南來了解所有新特性。 這樣有可能會發現一些以前你要自己開發的功能,而現在已經被包含在核心代碼中了。? ? ? ? ? ? (推薦學習:yii教程

安裝

Yii 2.0 完全擁抱 Composer,它是事實上的 PHP 依賴管理工具。 核心框架以及擴展的安裝都通過 Composer 來處理。如果你想創建新擴展, 或者把你已有的 Yii 1.1 的擴展改寫成兼容 2.0 的版本, 你可以參考 創建擴展 章節。

PHP 需求

Yii 2.0 需要 PHP 5.4 或更高版本,該版本相對于 Yii 1.1 所需求的 PHP 5.2 而言有巨大的改進。 因此在語言層面上有很多的值得注意的不同之處。 下面是 PHP 層的主要變化匯總:

命名空間

匿名函數

數組短語法 […元素…] 用于取代 array(…元素…)

視圖文件中的短格式 echo 標簽 =,自 PHP 5.4 起總會被識別并且合法,無論 short_open_tag 的設置是什么,可以安全使用。

SPL 類和接口

延遲靜態綁定

日期和時間

Traits

intl Yii 2.0 使用 PHP 擴展 intl 來支持國際化的相關功能。

命名空間

Yii 2.0 里最明顯的改動就數命名空間的使用了。幾乎每一個核心類都引入了命名空間, 比如 yiiwebRequest。1.1 版類名前綴 “C” 已經不再使用。 當前的命名方案與目錄結構相吻合。例如,yiiwebRequest 就表明對應的類文件是 Yii 框架文件夾下的 web/Request.php 文件。

(有了 Yii 的類自動加載器, 你可以直接使用全部核心類而不需要顯式包含具體文件。)

組件(Component)與對象(BaseObject)?

Yii 2.0 把 1.1 中的 CComponent 類拆分成了兩個類:yiibaseObject 和 yiibaseComponent。 yiibaseObject 類是一個輕量級的基類,你可以通過 getters 和 setters 來定義對象的屬性。

?Component 類繼承自 yiibaseObject, 同時進一步支持 事件 和 行為。

如果你不需要用到事件或行為, 應該考慮使用 yiibaseObject 類作為基類。 這種類通常用來表示基本的數據結構

? 版權聲明
THE END
喜歡就支持一下吧
點贊6 分享