1. Go to this page and download the library: Download brash-creative/rabbit-queue library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
brash-creative / rabbit-queue example snippets
use Brash\RabbitQueue\RabbitQueue
class MyQueue extends RabbitQueue {
protected $queue = 'EXAMPLE_QUEUE';
public function __construct(AMQPConnection $connection)
{
parent::__construct($connection)
}
public function getQueue(): string
{
return $this->queue;
}
}
use PhpAmqpLib\Connection\AMQPStreamConnection;
use Brash\RabbitQueue\QueueException;
try {
// AMQPConnection(host, port, username, password)
$message = "This is my message";
$amqp = new AMQPStreamConnection('http://myrabbithost', 5672, 'guest', 'guest');
$publish = new MyQueue($amqp);
$publish->push($message);
} catch (QueueException $e) {
// Catch publish errors
} catch (\Exception $e) {
// Catch all other errors
}
$consume->pull([$class, 'method']);
$consume->pull(function (AMQPMessage $message){
// Some code
})
$consume->pull(ExampleConsumer::class);
class ExampleConsumer
{
public function __invoke(AMPQMessage $message)
{
// Code
}
}
use PhpAmqpLib\Connection\AMQPStreamConnection;
use Brash\RabbitQueue\QueueException;
// A class containing a method that the consumer can send the retrieved message body
try {
$amqp = new AMQPStreamConnection('http://myrabbithost', 5672, 'guest', 'guest');
$consume = new MyQueue($amqp);
$consume->pull(ExampleConsumer::class);
// Keep listening to the queue...
$consume->poll();
} catch (QueueException $e) {
// Catch consume errors
} catch (\Exception $e) {
// Catch all other errors
}
use PhpAmqpLib\Message\AMQPMessage;
class ExampleConsumer {
public function __invoke(AMQPMessage $message)
{
$body = $message->body;
// Do something with the message
$message->delivery_info['channel']->basic_ack($message->delivery_info['delivery_tag']);
}
}
use PhpAmqpLib\Message\AMQPMessage;
use Brash\RabbitQueue\AcknowledgableConsumer;
class ExampleConsumer extends AcknowledgableConsumer
{
public function __invoke(AMQPMessage $message)
{
$body = $message->body;
// Do something with the message
$this->acknowledge($message);
}
}
use PhpAmqpLib\Connection\AMQPStreamConnection;
use Brash\RabbitQueue\QueueException;
// A class containing a method that the consumer can send the retrieved message body
try {
$amqp = new AMQPStreamConnection('http://myrabbithost', 5672, 'guest', 'guest');
$consume = new MyQueue($amqp);
$consume->pullNoAck(ExampleConsumer::class);
// Keep listening to the queue...
$consume->poll();
} catch (QueueException $e) {
// Catch consume errors
} catch (\Exception $e) {
// Catch all other errors
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.