Diogo Cordeiro 96c4e57ac0 Add gs-wsRealtime by Chimo | il y a 5 ans | |
---|---|---|
.. | ||
examples | il y a 5 ans | |
src | il y a 5 ans | |
tests | il y a 5 ans | |
.gitignore | il y a 5 ans | |
.travis.yml | il y a 5 ans | |
CHANGELOG.md | il y a 5 ans | |
LICENSE | il y a 5 ans | |
README.md | il y a 5 ans | |
composer.json | il y a 5 ans | |
composer.lock | il y a 5 ans | |
phpunit.xml.dist | il y a 5 ans |
ZeroMQ bindings for React.
The recommended way to install react/zmq is through composer.
{
"require": {
"react/zmq": "0.2.*|0.3.*"
}
}
And don't forget to autoload:
<?php
require 'vendor/autoload.php';
Here is an example of a push socket:
<?php
$loop = React\EventLoop\Factory::create();
$context = new React\ZMQ\Context($loop);
$push = $context->getSocket(ZMQ::SOCKET_PUSH);
$push->connect('tcp://127.0.0.1:5555');
$i = 0;
$loop->addPeriodicTimer(1, function () use (&$i, $push) {
$i++;
echo "sending $i\n";
$push->send($i);
});
$loop->run();
And the pull socket that goes with it:
<?php
$loop = React\EventLoop\Factory::create();
$context = new React\ZMQ\Context($loop);
$pull = $context->getSocket(ZMQ::SOCKET_PULL);
$pull->bind('tcp://127.0.0.1:5555');
$pull->on('error', function ($e) {
var_dump($e->getMessage());
});
$pull->on('message', function ($msg) {
echo "Received: $msg\n";
});
$loop->run();
To run the test suite, you need PHPUnit.
$ phpunit
MIT, see LICENSE.