溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

yii2怎么配置

發(fā)布時間:2020-12-19 11:19:01 來源:億速云 閱讀:180 作者:小新 欄目:編程語言

這篇文章主要介紹了yii2怎么配置,具有一定借鑒價值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。

在Yii中創(chuàng)建新對象或者初始化已經(jīng)存在的對象廣泛的使用配置,配置通常包含被創(chuàng)建對象的類名和一組將要賦值給對象的屬性的初始值,這里的屬性是Yii2的屬性。

還可以在對象的事件上綁定事件處理器,或者將行為附加到對象上。從而在定義了對象的初始值的同時,充分規(guī)定對象的運行時的動態(tài)特性。               

以下代碼中的配置被用來創(chuàng)建并初始化一個數(shù)據(jù)庫連接:

$config = [
    'class' => 'yii\db\Connection',
    'dsn' => 'mysql:host=127.0.0.1;dbname=demo',
    'username' => 'root',
    'password' => '',
    'charset' => 'utf8',
];
$db = Yii::createObject($config);

Yii::createObject()是Yii2中最常用的用來創(chuàng)建對象的方法,其內(nèi)容是從DI Container中去取的對象。

這個方法方法接受一個配置數(shù)組并根據(jù)數(shù)組中指定的類名創(chuàng)建對象,對象實例化后,剩余的參數(shù)被用來初始化對象的屬性,事件和行為。

在Yii2.1中,配置數(shù)組中用來表示類名的鍵值由class變成了__class,但是配置的原理是不變的。

對于已存在的對象,可以使用 Yii::configure() 方法根據(jù)配置去初始化其屬性, 就像這樣:

Yii::configure($object, $config);

請注意,如果配置一個已存在的對象,那么配置數(shù)組中不應(yīng)該包含指定類名的 class 元素。

配置是Yii2的一個特色

在編程中,有個非常重要的概念叫“委托”,就是一個對象A可以依靠另一個對象B去完成特定的功能,典型的應(yīng)用就是策略模式了。

要實現(xiàn)“委托”,要有這么個流程:在對象A實例化時注入另一個對象B;A持有對象B;對象A委托對象B去完成特定的功能。

“注入”“持有”“委托”都是設(shè)計模式中的高頻詞匯,通過這些操作可以擴展類的功能。

感謝你能夠認真閱讀完這篇文章,希望小編分享yii2怎么配置內(nèi)容對大家有幫助,同時也希望大家多多支持億速云,關(guān)注億速云行業(yè)資訊頻道,遇到問題就找億速云,詳細的解決方法等著你來學(xué)習(xí)!

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI