程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> PHP的Yii框架中移除組件所綁定的行為的方法,yii框架

PHP的Yii框架中移除組件所綁定的行為的方法,yii框架

編輯:關於PHP編程

PHP的Yii框架中移除組件所綁定的行為的方法,yii框架


要移除行為,可以調用 yii\base\Component::detachBehavior() 方法用行為相關聯的名字實現:

$component->detachBehavior('myBehavior1');

也可以移除全部行為:

$component->detachBehaviors();

這上面兩種方法,都會調用到 yii\base\Behavior::detach() ,其代碼如下:

public function detach()
{
  // 這得是個名花有主的行為才有解除一說
  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 設置為 null ,表示這個行為沒有依附到任何類上。 二是通過Component的 off() 將綁定到類上的事件hanlder解除下來。一句話,善始善終。

您可能感興趣的文章:

  • PHP的Yii框架中行為的定義與綁定方法講解
  • 詳解在PHP的Yii框架中使用行為Behaviors的方法
  • 深入講解PHP的Yii框架中的屬性(Property)
  • PHP的Yii框架中使用數據庫的配置和SQL操作實例教程
  • 深入解析PHP的Yii框架中的event事件機制
  • 全面解讀PHP的Yii框架中的日志功能
  • Yii使用find findAll查找出指定字段的實現方法
  • 解析yii數據庫的增刪查改
  • Yii PHP Framework實用入門教程(詳細介紹)
  • 詳解PHP的Yii框架中組件行為的屬性注入和方法注入

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved