additional attribute to the publish method is
`correlation_id`
AMQPExchange::publish
(PECL amqp >= Unknown)
AMQPExchange::publish — Publish a message to an exchange.
Description
public bool AMQPExchange::publish
( string
$message
, string $routing_key
[, int $flags = AMQP_NOPARAM
[, array $attributes = array()
]] )Publish a message to the exchange represented by the AMQPExchange object.
Parameters
-
message -
The message to publish.
-
routing_key -
The routing key to which to publish.
-
flags -
One or more of
AMQP_MANDATORYandAMQP_IMMEDIATE. -
attributes -
Supported indexes key Description Default value content_type text/plain content_encoding NULL message_id NULL user_id NULL app_id NULL delivery_mode NULL priority NULL timestamp NULL expiration NULL type NULL reply_to NULL
Return Values
Returns TRUE on success or FALSE on failure.
Errors/Exceptions
Throws an AMQPExchangeException on failure.
Throws AMQPChannelException if the channel is not open.
Throws AMQPConnectionException if the connection to the broker was lost.
zircote
18-Apr-2012 03:45
glenjamin at gmail dot com
19-Feb-2012 08:27
Any unused attributes will be assigned as custom headers attached to the outgoing message's headers collection.
This isn't exactly clear from the documentation above, but I've checked the C source, and that's how you set custom headers.
prudkiy at mail dot ru
25-Dec-2011 01:26
Please note, here no way to be sure if message really published
The use of flags AMQP_MANDATORY and AMQP_IMMEDIATE not force to return any errors (in case if queue not exists etc) and "publish" returns TRUE anyway
