在事件中使用implement ShouldBroadcast
时是否有一种简单的有条件广播方式?例如:
/**
* Get the channels the event should be broadcast on.
*
* @return array
*/
public function broadcastOn()
{
if ($x == 2) return;
return ['test_channel'];
}
不幸的是,上面的代码仍然会创建排队的作业,它不会成功并继续尝试但不能,因为它没有通道名称。有没有一种简单的方法来抑制使用$x == 2
创建的作业?
答案 0 :(得分:1)
broadcastOn
函数必须返回一个数组。
如果您不想在任何频道播放,请返回一个空数组。
if ($x == 2) return [];
答案 1 :(得分:0)
只需添加为Laravel,现在就可以在涉及此场景的事件上支持lists = [u1, l1, u2, l2]
lambda21 = tuple(tuple(lists[n][index] for index in t) for n, t in enumerate(lambda21))
方法。
例如;
broadcastWhen()