小編給大家分享一下yii2的優(yōu)勢在哪,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
專注于為中小企業(yè)提供網(wǎng)站建設(shè)、成都做網(wǎng)站服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)未央免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了成百上千企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。
1、安裝簡單
對Web開發(fā)者來說,時間就是金錢。沒有人會希望把自己的時間浪費(fèi)在繁瑣的安裝和配置上。 Composer會來處理安裝程序。而我比較喜歡傾向于使用基本的應(yīng)用模板,哪怕我的站點上有一個單獨的前端和后端組件。
相反,我選擇在我站點的后端部分使用一個模塊。(Yii模塊是迷你應(yīng)用程序的最佳寫照,用來嵌入到你的主應(yīng)用程序中。)
注:后面的很多例子中的目錄引用都使用到了簡單模板的目錄結(jié)構(gòu)。
2、使用現(xiàn)代技術(shù)
Yii是一個純粹的OOP框架,它充分利用了PHP一些較先進(jìn)的功能,包括延遲靜態(tài)綁定,SPL類和接口,以及匿名函數(shù)。
所有的類都被稱為命名空間,并允許你利用它們的PSR-4兼容的自動加載機(jī)。也就是說,包括Yii中的HTML輔助類,也是同樣如此簡單:
use yii\helpers\Html;
Yii還可以定義別名,來幫助簡化你的命名空間。在上面的例子中,use聲明會加載一個類定義,目錄中的默認(rèn)路徑為 /vendor/yiisoft/yii2/helpers。這個別名被定義在BaseYii類中第79行:
public static $aliases = ['@yii' => __DIR__];
3、高度的可擴(kuò)展性
Yii就像一套西裝,看起來很大,但其實卻很容易調(diào)整來滿足你的需求。實際上,框架的每個組件都是可擴(kuò)展的。舉一個簡單的例子就是,在你的觀點上增加了一個獨特的body ID。
4、鼓勵測試
Yii與Codeception是緊密相連的。Codeception是一個了不起的PHP測試框架,有助于簡化應(yīng)用創(chuàng)建部件、功能測試和驗收測試的過程。
5、簡化安全性
安全性是任何一個web應(yīng)用的重要組成部分,幸運(yùn)的是,Yii有一些很棒的功能可以幫你解決這方面的煩惱。
Yii帶有一個安全應(yīng)用組件,其中公開的幾個方法可以幫助創(chuàng)建一個更安全的應(yīng)用。其中一些比較有用的方法如下:
·generatePasswordHash: 從一個密碼和隨機(jī)因子生成一個安全的單向散列函數(shù)。這種方法為你編譯了一個隨機(jī)因子,然后通過PHP crypt函數(shù)功能提供的字符串創(chuàng)建了一個單項散列函數(shù)。
·validatePassword:對于generatePasswordHash,這是一個伴侶功能,并且允許你檢查用戶提供的密碼是否與你存儲的散列函數(shù)相匹配。
·generateRandomKey:允許你創(chuàng)建一個任意長度的隨機(jī)字符串。
6、縮短開發(fā)時間
大多數(shù)項目都會涉及一定的重復(fù)任務(wù),沒有人愿意浪費(fèi)時間。而Yii提供的一些工具可以幫助你減少在這些任務(wù)中所花費(fèi)的時間,將更多的時間用于定制讓客戶滿意的應(yīng)用。
在這些工具中,其中有一個名為“Gii”的工具最為強(qiáng)大。Gii是一個基于web的基架代碼工具,可以讓你快速創(chuàng)建代碼模板:
·模型 ·控制器 ·形式 ·模塊 ·擴(kuò)展 ·CRUD控制器行為和視圖
Gii是高度可配置的。你可以將其設(shè)置為僅在特定的環(huán)境下加載。
7、容易調(diào)整為最佳性能
大家都知道,一個網(wǎng)站很慢的話會很容易讓用戶產(chǎn)生不滿,所以Yii提供了幾種工具來幫助你從應(yīng)用中“擠”出更多的速度。
所有Yii的緩存組件都是從yii/caching/Cache擴(kuò)展來的,你可以選擇任何一種,你想同時使用一個通用API擴(kuò)展的緩存系統(tǒng)。你甚至可以注冊多個高速緩存組件。Yii目前支持?jǐn)?shù)據(jù)庫和文件緩存,APC,Memcache, redis, WinCache, XCache和Zend 數(shù)據(jù)緩存。
默認(rèn)情況下,如果你正在使用Active Record,然后Yii會運(yùn)行一個額外的查詢,來確定表參與生成模型的架構(gòu)
看完了這篇文章,相信你對“yii2的優(yōu)勢在哪”有了一定的了解,如果想了解更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!