這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)?lái)有關(guān)Behaviors怎么在PHP中使用,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
站在用戶的角度思考問題,與客戶深入溝通,找到麥積網(wǎng)站設(shè)計(jì)與麥積網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類型包括:成都做網(wǎng)站、網(wǎng)站設(shè)計(jì)、外貿(mào)營(yíng)銷網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、域名注冊(cè)、網(wǎng)站空間、企業(yè)郵箱。業(yè)務(wù)覆蓋麥積地區(qū)。一個(gè)綁定了行為的類,表現(xiàn)起來(lái)是這樣的:
// Step 1: 定義一個(gè)將綁定行為的類 class MyClass extends yii\base\Component { // 空的 } // Step 2: 定義一個(gè)行為類,他將綁定到MyClass上 class MyBehavior extends yii\base\Behavior { // 行為的一個(gè)屬性 public $property1 = 'This is property in MyBehavior.'; // 行為的一個(gè)方法 public function method1() { return 'Method in MyBehavior is called.'; } } $myClass = new MyClass(); $myBehavior = new MyBehavior(); // Step 3: 將行為綁定到類上 $myClass->attachBehavior('myBehavior', $myBehavior); // Step 4: 訪問行為中的屬性和方法,就和訪問類自身的屬性和方法一樣 echo $myClass->property1; echo $myClass->method1();
上面的代碼你不用全都看懂,雖然你可能已經(jīng)用腳趾頭猜到了這些代碼的意思, 但這里你只需要記住行為中的屬性和方法可以被所綁定的類像訪問自身的屬性和方法一樣直接訪問就OK了。 代碼中, $myClass 是沒有 property1 method() 成員的。這倆是 $myBehavior 的成員。 但是,通過(guò) attachBehavior() 將行為綁定到對(duì)象之后, $myCalss 就好像練成了吸星大法、化功大法,表現(xiàn)的財(cái)大氣粗,將別人的屬性和方法都變成了自己的。
另外,從上面的代碼中,你還要掌握使用行為的大致流程:
從 yii\base\Component 派生自己的類,以便使用行為;
從 yii\base\Behavior 派生自己的行為類,里面定義行為涉及到的屬性、方法;
將Component和Behavior綁定起來(lái);
像使用Component自身的屬性和方法一樣,盡情使用行為中定義的屬性和方法。
使用行為,必須像前文描述的一樣先把它附加到 yii\base\Component 類或其子類。一旦行為附加到組件,就可以直接使用它。
行為附加到組件后,可以通過(guò)組件訪問一個(gè)行為的公共成員變量或 getter 和 setter 方法定義的屬性:
// "prop1" 是定義在行為類的屬性 echo $component->prop1; $component->prop1 = $value; 類似地也可以調(diào)用行為的公共方法: // foo() 是定義在行為類的公共方法 $component->foo();
如你所見,盡管 $component 未定義 prop1 和 foo() ,它們用起來(lái)也像組件自己定義的一樣。
如果兩個(gè)行為都定義了一樣的屬性或方法,并且它們都附加到同一個(gè)組件,那么首先附加上的行為在屬性或方法被訪問時(shí)有優(yōu)先權(quán)。
附加行為到組件時(shí)的命名行為,可以使用這個(gè)名稱來(lái)訪問行為對(duì)象,如下所示:
$behavior = $component->getBehavior('myBehavior');
也能獲取附加到這個(gè)組件的所有行為:
$behaviors = $component->getBehaviors();
移除行為
要移除行為,可以調(diào)用 yii\base\Component::detachBehavior() 方法用行為相關(guān)聯(lián)的名字實(shí)現(xiàn):
$component->detachBehavior('myBehavior1');
也可以移除全部行為:
$component->detachBehaviors();
上述就是小編為大家分享的Behaviors怎么在PHP中使用了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
本文題目:Behaviors怎么在PHP中使用-創(chuàng)新互聯(lián)
標(biāo)題URL:http://aaarwkj.com/article18/dpghdp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信公眾號(hào)、定制網(wǎng)站、建站公司、定制開發(fā)、標(biāo)簽優(yōu)化、網(wǎng)站導(dǎo)航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容