我有一个如下定义的函数:
public function subscribe($someQueue)
{
$callback = function($msg){
return $msg->body;
};
$this->channel->basic_consume( $someQueue, '', FALSE, TRUE, FALSE, FALSE, $callback);
while(count($this->channel->callbacks)) {
$this->channel->wait();
}
}
我正在使用以下功能:
注意:以下行位于不同的类文件中,因此创建了包含上述函数的类的对象。
$objRMQ = new RabbitMQ();
$msgBody = $objRMQ->subscribe("someQueue");
echo "message body returned from someMethod: ".$msgBody;
基本上,我想将每条消息的正文返回给发布到队列的调用者函数。
电流输出:
message body returned from subscribe: NULL
预期输出:
holla, this is your message from queue