PHP的Yii框架中移除組件所綁定的行為的方法
要移除行為,可以調(diào)用 yii\base\Component::detachBehavior() 方法用行為相關(guān)聯(lián)的名字實(shí)現(xiàn):
$component->detachBehavior('myBehavior1');
也可以移除全部行為:
$component->detachBehaviors();
這上面兩種方法,都會(huì)調(diào)用到 yii\base\Behavior::detach() ,其代碼如下:
public function detach()
{
// 這得是個(gè)名花有主的行為才有解除一說
if ($this->owner) {
// 遍歷行為定義的事件,一一解除
foreach ($this->events() as $event => $handler) {
$this->owner->off($event, is_string($handler) ? [$this,
$handler] : $handler);
}
$this->owner = null;
}
}
與 yii\base\Behavior::attach() 相反,解除的過程就是干兩件事: 一是將 $owner 設(shè)置為 null ,表示這個(gè)行為沒有依附到任何類上。 二是通過Component的 off() 將綁定到類上的事件hanlder解除下來。一句話,善始善終。
相關(guān)文章
php通過array_shift()函數(shù)移除數(shù)組第一個(gè)元素的方法
這篇文章主要介紹了php通過array_shift()函數(shù)移除數(shù)組第一個(gè)元素的方法,涉及php中array_shift()函數(shù)操作數(shù)組的技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-03-03
php模擬用戶自動(dòng)在qq空間發(fā)表文章的方法
這篇文章主要介紹了php模擬用戶自動(dòng)在qq空間發(fā)表文章的方法,可實(shí)現(xiàn)模擬用戶提交表單發(fā)布文章的功能,代碼中包含有較為詳盡的注釋便于理解,需要的朋友可以參考下2015-01-01
PHP中使用file_get_contents抓取網(wǎng)頁中文亂碼問題解決方法
這篇文章主要介紹了PHP中使用file_get_contents抓取網(wǎng)頁中文亂碼問題解決方法,可以通過使用curl配置gzip選項(xiàng)來解決,具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2014-12-12
PHP簡單計(jì)算兩個(gè)時(shí)間差的方法示例
這篇文章主要介紹了PHP簡單計(jì)算兩個(gè)時(shí)間差的方法,結(jié)合具體實(shí)例形式分析了php日期與時(shí)間的轉(zhuǎn)換及數(shù)學(xué)運(yùn)算相關(guān)操作技巧,需要的朋友可以參考下2017-06-06
PHP IN_ARRAY 函數(shù)使用注意事項(xiàng)
其實(shí)關(guān)鍵還是因?yàn)?php是弱類型語言,php進(jìn)行比較的時(shí)候 最好還是使用strict方法的。因?yàn)檫@樣不但比較兩者的值是否一直,還會(huì)比較兩者的類型是否一直。2010-07-07
thinkphp多表查詢兩表有重復(fù)相同字段的完美解決方法
下面小編就為大家?guī)硪黄猼hinkphp多表查詢兩表有重復(fù)相同字段的完美解決方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-09-09
PHP實(shí)現(xiàn)動(dòng)態(tài)刪除XML數(shù)據(jù)的方法示例
這篇文章主要介紹了PHP實(shí)現(xiàn)動(dòng)態(tài)刪除XML數(shù)據(jù)的方法,在前面介紹的Message_XML類基礎(chǔ)上進(jìn)行改進(jìn),增加了xml刪除功能,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2018-03-03

