YII事件
来源:互联网 发布:西门子300plc编程实例 编辑:程序博客网 时间:2024/05/22 07:55
public function trigger($name, Event $event = null)
{
$this->ensureBehaviors();
if (!empty($this->_events[$name])) {
if ($event === null) {
$event = new Event;
}
if ($event->sender === null) {
$event->sender = $this;
}
$event->handled = false;
$event->name = $name;
foreach ($this->_events[$name] as $handler) {
$event->data = $handler[1];
call_user_func($handler[0], $event);
// stop further handling if the event is handled
if ($event->handled) {
return;
}
}
}
// invoke class-level attached handlers
Event::trigger($this, $name, $event);
}
public function ensureBehaviors()
{
if ($this->_behaviors === null) {
$this->_behaviors = [];
foreach ($this->behaviors() as $name => $behavior) {
$this->attachBehaviorInternal($name, $behavior);
}
}
}
private function attachBehaviorInternal($name, $behavior)
{
if (!($behavior instanceof Behavior)) {
$behavior = Yii::createObject($behavior);
}
if (is_int($name)) {
$behavior->attach($this);
$this->_behaviors[] = $behavior;
} else {
if (isset($this->_behaviors[$name])) {
$this->_behaviors[$name]->detach();
}
$behavior->attach($this);
$this->_behaviors[$name] = $behavior;
}
return $behavior;
}
- Yii 事件
- YII事件
- 23. Yii 组件事件
- Yii的事件机制
- YII事件的级别
- Yii 事件处理器(事件handler)
- yii中事件的了解
- Yii框架中事件概念
- Yii 2.0 事件使用示例
- YII框架的事件机制
- 【Yii】组件和事件行为管理
- 清晰理解Yii的事件和行为
- Yii
- yii
- Yii
- yii
- yii
- yii
- OpenGL+freeglut使用glutGameModeS…
- Yii Object的配置方法
- 【5】一铭操作系统初体验,更新fir…
- PHP namespace 命名空间
- OpenGL【1】视图类与鼠标坐标操作
- YII事件
- STM32中使用long long 型的数据以及数据的转换
- cpp (c++) 类的多态、继…
- YII事件的级别
- 读IntentService、HandlerThread源码之浅析
- Linux下51单片机编译烧录平台搭建…
- YII访问地址初学(一)
- OpenGL程序巨卡怎么办,可能是glFl…
- YII表单初学(一)