(PECL zmq >= 0.5.0)

ZMQSocket::__constructConstruct a new ZMQSocket


public ZMQSocket::__construct ( ZMQContext $context , int $type , string $persistent_id = null , callable $on_new_socket = null )

Constructs a ZMQSocket object. persistent_id parameter can be used to allocated a persistent socket. A persistent socket has to be allocated from a persistent context and it stays connected over multiple requests. The persistent_id parameter can be used to recall the same socket over multiple requests. The on_new_socket is called only when a new underlying socket structure is created.

Elenco dei parametri


ZMQContext object.


The socket type. See ZMQ::SOCKET_* constants.


If persistent_id is specified the socket will be persisted over multiple requests. If context is not persistent the socket falls back to non-persistent mode.


Callback function, which is executed when a new socket structure is created. This function does not get invoked if the underlying persistent connection is re-used.

callback ( ZMQSocket $socket , string $persistent_id = null )


Throws ZMQSocketException on error.


Example #1 A ZMQSocket() example

Using callback the bind/connect socket


  The socket is persistent so this function is called only on the 
  first request to the script.
function on_new_socket_cb(ZMQSocket $socket$persistent_id null)
    if (
$persistent_id === 'server') {
    } else {

/* Allocate a new context */
$context = new ZMQContext();

/* Create a new socket */
$socket $context->getSocket(ZMQ::SOCKET_REP'server''on_new_socket_cb');

$message $socket->recv();
"Received message: {$message}\n";

add a note add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top