PHP GearmanClient
我正在使用Gearman客户端工作者脚本。我们能否将Gearman回调方法声明为protected或private?即PHP GearmanClient
$this->gearmanClient->setCompleteCallback(array($this, 'JobComplete')); $this->gearmanClient->setFailCallback(array($this, 'JobFailCallBack'));
什么是与“JobComplete”方法等使用最好的接入运营商?
回答:
在PHP中,如果从正确的上下文中调用private/protected回调(例如,在可访问这些回调的类中),请参阅here进行讨论。
在你的情况下,GearmanClient类将无法访问回调(除非你做了一些非常奇怪的抽象)。所以答案是否定的,你不能。
至于访问操作符的问题(如果我理解正确 - 是否使用对象回调或类回调),我想答案是 - 它取决于。如果您的回调将提供有关特定对象的数据,则该对象接收回调是有意义的。如果这是一个普通的消息,你的应用程序将只存储在数据库中,静态类接口也可以做到这一点。
回答:
当然可以。只是围绕关闭包装:
$this->gearmanClient->setCompleteCallback(function() { $this->JobComplete();
});
以上是 PHP GearmanClient 的全部内容, 来源链接: utcz.com/qa/261508.html