1. Go to this page and download the library: Download mmoreram/rsqueue-bundle 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/ */
mmoreram / rsqueue-bundle example snippets
bash
php composer.phar update
php
return array(
// ...
new Mmoreram\RSQueueBundle\RSQueueBundle(),
// ...
);
php
use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Output\OutputInterface;
use Mmoreram\RSQueueBundle\Command\ConsumerCommand;
/**
* Testing consumer command
*/
class TestConsumerCommand extends ConsumerCommand
{
/**
* Configuration method
*/
protected function configure()
{
$this
->setName('test:consumer')
->setDescription('Testing consumer command');
;
parent::configure();
}
/**
* Relates queue name with appropiated method
*/
public function define()
{
$this->addQueue('videos', 'consumeVideo');
}
/**
* If many queues are defined, as Redis respects order of queues, you can shuffle them
* just overwritting method shuffleQueues() and returning true
*
* @return boolean Shuffle before passing to Gearman
*/
public function shuffleQueues()
{
return true;
}
/**
* Consume method with retrieved queue value
*
* @param InputInterface $input An InputInterface instance
* @param OutputInterface $output An OutputInterface instance
* @param Mixed $payload Data retrieved and unserialized from queue
*/
protected function consumeVideo(InputInterface $input, OutputInterface $output, $payload)
{
$output->writeln($payload);
}
}
php
use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Output\OutputInterface;
use Mmoreram\RSQueueBundle\Command\SubscriberCommand;
/**
* Testing subscriber command
*/
class TestSubscriberCommand extends SubscriberCommand
{
/**
* Configuration method
*/
protected function configure()
{
$this
->setName('test:subscriber:audios')
->setDescription('Testing subscriber audios command');
;
parent::configure();
}
/**
* Relates queue name with appropiated method
*/
public function define()
{
$this->addChannel('audios', 'consumeAudio');
}
/**
* If many queues are defined, as Redis respects order of queues, you can shuffle them
* just overwritting method shuffleQueues() and returning true
*
* @return boolean Shuffle before passing to Gearman
*/
public function shuffleQueues()
{
return true;
}
/**
* subscriber method with retrieved queue value
*
* @param InputInterface $input An InputInterface instance
* @param OutputInterface $output An OutputInterface instance
* @param Mixed $payload Data retrieved and unserialized from queue
*/
protected function consumeAudio(InputInterface $input, OutputInterface $output, $payload)
{
$output->writeln($payload);
}
}
php
use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Output\OutputInterface;
use Mmoreram\RSQueueBundle\Command\PSubscriberCommand;
/**
* Testing PSubscriber command
*/
class TestPSubscriberCommand extends PSubscriberCommand
{
/**
* Configuration method
*/
protected function configure()
{
$this
->setName('test:psubscriber')
->setDescription('Testing psubscriber command');
;
parent::configure();
}
/**
* Relates queue name with appropiated method
*/
public function define()
{
$this->addPattern('*', 'consumeAll');
}
/**
* If many queues are defined, as Redis respects order of queues, you can shuffle them
* just overwritting method shuffleQueues() and returning true
*
* @return boolean Shuffle before passing to Gearman
*/
public function shuffleQueues()
{
return true;
}
/**
* Consume method with retrieved queue value
*
* @param InputInterface $input An InputInterface instance
* @param OutputInterface $output An OutputInterface instance
* @param Mixed $payload Data retrieved and unserialized from queue
*/
protected function consumeAll(InputInterface $input, OutputInterface $output, $payload)
{
$output->writeln($payload);
}
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.