1. Go to this page and download the library: Download tahseen9/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/ */
bash
use Tahseen9\RabbitQueue\Contracts\T9RMQProducerInterface;
class MyProducer {
private string $exchange = 'my_exchange';
private string $queue = 'my_queue';
private T9RMQConsumerInterface $producer;
public function __construct(T9RMQProducerInterface $producer){
# you can define the exchange and queue here
$this->producer = $producer->setExchange($this->producer)
->onQueue($this->queue);
# if you are running multiple queues,
# pass the queue name in second argument of dispatch method like shown in the facade section
}
public function fooProducer() {
$this-producer->dispatch([
'lang' => 'php',
'framework' => 'laravel',
]); # return type void
} # fooProducer end
} # class end
bash
use Tahseen9\RabbitQueue\Contracts\T9RMQConsumerInterface;
class MyListener {
private string $exchange = 'my_exchange';
private string $queue = 'my_queue';
private T9RMQConsumerInterface $consumer;
public function __construct(T9RMQConsumerInterface $consumer){
# you can define the exchange and queue explicitly here
$this->consumer = $consumer->setExchange($this->exchange)
->onQueue($this->queue);
# if you are running multiple queues,
# pass the queue name in second argument of listen method like shown in the facade section
}
public function barListener() {
$this-consumer->jsonArray(true) # want json array, set true, default null : used json_encode() inside
->listen(function($message, $handler){
echo $message['lang']; # php
echo $message['framework']; # laravel
$handler->ack(); # acknowledge message after using it, so it will be removed from the queue
# $handler->stopWhenProcessed(); # use this if you want to stop execution after listening the whole queue
}); # return type void
} # barListener end
} # class end
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.