Php Yii:多活动最佳实践
Yii中的事件看起来很棒,但有几个问题仍然让我在晚上醒来:Php Yii:多活动最佳实践,php,events,yii,exception-handling,error-handling,Php,Events,Yii,Exception Handling,Error Handling,Yii中的事件看起来很棒,但有几个问题仍然让我在晚上醒来: 若我引发一个事件并在链中创建几个PHP事件处理程序类,我可以在它们之间传递不同的数据(比如返回值)吗? 这项活动是为实现这一目标而设计的吗?据我所知,事件似乎是一种单向的通知方式,将数据传回不是一种常见的做法,对吗 让我们说: 我有3个处理程序:Handler1,Handler2,Handler3按此顺序执行。每个处理程序连接一些字符串数据。 我可以在处理程序之间传递连接的sting吗?是否假定处理程序会这样做 在事件链中,在事件处理
- 若我引发一个事件并在链中创建几个PHP事件处理程序类,我可以在它们之间传递不同的数据(比如返回值)吗? 这项活动是为实现这一目标而设计的吗?据我所知,事件似乎是一种单向的通知方式,将数据传回不是一种常见的做法,对吗 让我们说: 我有3个处理程序:Handler1,Handler2,Handler3按此顺序执行。每个处理程序连接一些字符串数据。 我可以在处理程序之间传递连接的sting吗?是否假定处理程序会这样做
- 在事件链中,在事件处理程序中引发异常是否是一种好的做法
class MyEvent extends \yii\base\Event
{
public $data;
}
触发此事件:
$event = new MyEvent([
'data' => 'hello world'
]);
$this->trigger('myEvent', $event);
echo "After passing through the entire event chain, data is now: " . $event->data;
并添加侦听它的行为(或处理程序):
public function onMyEvent($event)
{
$event->data .= ', goodbye world';
}
如果一切顺利的话,这应该是回音helloworld,再见world