MQ:RabbitMQ學習(三) --- 使用官網提供的php composer包連接


RabbitMQ學習(三) --- 使用官網提供的php composer包連接

官網鏈接:

https://www.rabbitmq.com/tutorials/tutorial-one-php.html

https://xiaoxiami.gitbook.io/rabbitmq_into_chinese_php/ying-yong-jiao-cheng/php-ban/1-hello_world

 

對應的代碼:

https://github.com/rabbitmq/rabbitmq-tutorials/blob/master/php/receive.php

 

一、安裝composer拓展

新建composer.json文件,添加代碼

{
  "require": {
    "php-amqplib/php-amqplib": "2.6.1"
  }
}

安裝拓展:

composer install

 

二、使用代碼

 消費者代碼receive.php

<?php
require_once __DIR__ . '/vendor/autoload.php';
use PhpAmqpLib\Connection\AMQPStreamConnection;

$connection = new AMQPStreamConnection('localhost', 5672, 'guest', 'guest');
$channel = $connection->channel();

$channel->queue_declare('hello', false, false, false, false);

echo " [*] Waiting for messages. To exit press CTRL+C\n";

$callback = function ($msg) {
    echo ' [x] Received ', $msg->body, "\n";
};

$channel->basic_consume('hello', '', false, true, false, false, $callback);

while(count($channel->callbacks)) {
    $channel->wait();
}

$channel->close();
$connection->close();

 

生產者代碼send.php

<?php
require_once __DIR__ . '/vendor/autoload.php';
use PhpAmqpLib\Connection\AMQPStreamConnection;
use PhpAmqpLib\Message\AMQPMessage;

$connection = new AMQPStreamConnection('localhost', 5672, 'guest', 'guest');
$channel = $connection->channel();

$channel->queue_declare('hello', false, false, false, false);

$msg = new AMQPMessage('Hello World!');
$channel->basic_publish($msg, '', 'hello');

echo " [x] Sent 'Hello World!'\n";

$channel->close();
$connection->close();

 

三、使用

先啟動消費者 receive.php 接收消息

再啟動 生產者 send.php 發送消息

 

本博客地址: wukong1688

本文原文地址:https://www.cnblogs.com/wukong1688/p/13406908.html

轉載請著名出處!謝謝~~

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM