## 发布消息 ### 用路由键推送消息 ```php AmqpLink::publish('routing-key', 'message'); ``` ### 用路由键推送消息并创建队列 ```php AmqpLink::publish('routing-key', 'message' , ['queue' => 'queue-name']); ``` ### 带有路由键和覆盖属性的推送消息 ```php AmqpLink::publish('routing-key', 'message' , ['exchange' => 'amq.direct']); ``` ## 消费信息 ### 消费消息,确认并在没有消息时停止 ```php AmqpLink::consume('queue-name', function ($message, $resolver) { var_dump($message->body); $resolver->acknowledge($message); $resolver->stopWhenProcessed(); }); ``` ### 永远消耗消息 ```php AmqpLink::consume('queue-name', function ($message, $resolver) { var_dump($message->body); $resolver->acknowledge($message); }); ``` ### 自定义监听路由 ```php AmqpLink::consume('queue-name', function ($message, $resolver) { var_dump($message->body); $resolver->acknowledge($message); }, ['*', 'test.*']); ``` ### 使用自定义设置来消费消息 ```php AmqpLink::consume('queue-name', function ($message, $resolver) { var_dump($message->body); $resolver->acknowledge($message); }, [], [ 'timeout' => 2, 'vhost' => 'vhost3' ]); ``` ## 扇出示例 ### 发布消息 ```php \AmqpLink::publish('', 'message' , [ 'exchange_type' => 'fanout', 'exchange' => 'amq.fanout', ]); ``` ### 消费信息 ```php \AmqpLink::consume('', function ($message, $resolver) { var_dump($message->body); $resolver->acknowledge($message); }, [ 'exchange' => 'amq.fanout', 'exchange_type' => 'fanout', 'queue_force_declare' => true, 'queue_exclusive' => true, 'persistent' => true // required if you want to listen forever ]); ```