2016-06-10 176 views
0

在事件中使用implement ShouldBroadcast时,是否有一种简单的方法可以有条件地进行广播?例如:Laravel的有条件广播

/** 
* Get the channels the event should be broadcast on. 
* 
* @return array 
*/ 
public function broadcastOn() 
{ 
    if ($x == 2) return; 
    return ['test_channel']; 
} 

不幸的是上面还能造成排队的作业的代码,它不会成功,并且继续尝试,但不能因为它不具有的频道名称。有没有简单的方法来抑制$x == 2创建的作业?

+0

这很有效,谢谢,我非常头疼。 –

+0

很高兴帮助!刚刚发布为下面的答案。 – jszobody

回答

1

broadcastOn函数必须返回一个数组。

所以,如果你不想在任何频道上广播,只需返回一个空数组。

if ($x == 2) return [];