2017 © Pedro Peláez
 

library php-amqp

PHP AMQP Binding Library

image

pdezwart/php-amqp

PHP AMQP Binding Library

  • Thursday, July 5, 2018
  • by EagleEyeJohn
  • Repository
  • 28 Watchers
  • 343 Stars
  • 26,035 Installations
  • C
  • 3 Dependents
  • 0 Suggesters
  • 78 Forks
  • 25 Open issues
  • 20 Versions
  • 7 % Grown

The README.md

PHP AMQP bindings Test

Object-oriented PHP bindings for the AMQP C library (https://github.com/alanxz/rabbitmq-c), (*1)

Requirements:

  • PHP >= 7.4 with either ZTS or non-ZTS version.
  • Starting with php-amqp 2.0.0 at least version 0.8.0 of librabbitmq is required (at least 0.10.0 is recommended)
  • to run tests RabbitMQ server >= 3.4.0 required.

Installation

Linux

Some systems have php-amqp extension available in their package repositories or available via an external repository so it is MAY be the preferable way to install., (*2)

Fresh php-pecl-amqp and librabbitmq RPMs available via remi repo., (*3)

If you want to stay on the bleeding edge and have the latest version, install php-amqp extension from PECL or compile from sources (follow PHP official docs instruction)., (*4)

Windows

  • Before download, check if your PHP installation is thread safe or non-thread safe by entering php -i|findstr " Thread" in your terminal
  • Download thread safe or non-thread safe version of the extension for your PHP version from https://pecl.php.net/package/amqp. Look for the "DLL" link next to each release in the list of available releases
  • After download, copy the rabbitmq.4.dll and rabbitmq.4.pdb files to the PHP root folder and copy php_amqp.dll and php_amqp.pdb files to PHP\ext folder
  • Add extension=amqp to the php.ini file
  • Check if the module is properly installed with php -m

Documentation

Check out the official RabbitMQ tutorials as well as the php-amqp specific examples., (*5)

There are also stub files available that document the API of PHP AMQP. These stubs can also be used in your IDE for code completion, navigation and documentation., (*6)

Check out the upgrading guide to check breaking changes between versions, e.g. from 1.x to 2.x., (*7)

Finally, check out the tests to see usage examples and edge cases., (*8)

Notes & limitations

  • You can't share any of AMQP API objects (AMQPConnection, AMQPChannel, AMQPQueue, AMQPExchange) between threads. Use a separate connection per thread.
  • There may only be one persistent connection per connection information. If there will be an attempt to create another persistent connection with the same credentials, an exception will be thrown.
  • Channels on persistent connections are not persistent: they are destroyed between requests.
  • Heartbeats are limited to blocking calls only, so if there are no any operations on a connection or no active consumer set, connection may be closed by the broker as dead.

How to report a problem

  1. First, search through the closed issues and stackoverflow.com.
  2. Submit an issue with short and definitive title that describe your problem
  3. Provide platform info, PHP interpreter version, SAPI mode (cli, fpm, cgi, etc) the extension is used in, php-amqp extension version, librabbitmq version, make tools version.
  4. Description should provide information on how to reproduce a problem (gist is the most preferable way to include large sources) in a definitive way. Use Vagrant to replicate unusual environments.
  5. If stack trace is generated, include it in full via gist or the important part (if you definitely know what you are doing) directly in the description.

Things to check before reporting a problem

Some of them, the list is not complete., (*9)

  1. You are running on correct machine in correct environment and your platform meets your application requirement.
  2. librabbitmq is installed and discoverable in your environment so php-amqp extension can load it.
  3. php-amqp extension present in system (find amqp.so or amqp.dll if you are on windows), it is loaded (php --ri amqp produced some info), and there are no underlying abstraction that MAY emulate php-amqp work.
  4. You hav correct RabbitMQ credentials.
  5. You are using the latest php-amqp, librabbitmq, RabbitMQ and sometimes PHP version itself. Sometimes your problem is already solved.
  6. Other extensions disabled (especially useful when PHP interpreter crashes, and you get a stack trace and segmentation fault).

Development

See DEVELOPMENT.md for details., (*10)

The Versions

05/07 2018

dev-master

9999999-dev https://github.com/pdezwart/php-amqp

PHP AMQP Binding Library

  Sources   Download

PHP-3.01

The Requires

  • php >=5.3.0

 

by Pieter de Zwart

rabbitmq queue message amqp

19/10 2017

dev-release/1.9

dev-release/1.9 https://github.com/pdezwart/php-amqp

PHP AMQP Binding Library

  Sources   Download

PHP-3.01

The Requires

  • php >=5.3.0

 

by Pieter de Zwart

rabbitmq queue message amqp

19/10 2017

v1.9.3

1.9.3.0 https://github.com/pdezwart/php-amqp

PHP AMQP Binding Library

  Sources   Download

PHP-3.01

The Requires

  • php >=5.3.0

 

by Pieter de Zwart

rabbitmq queue message amqp

12/06 2017

v1.9.1

1.9.1.0 https://github.com/pdezwart/php-amqp

PHP AMQP Binding Library

  Sources   Download

PHP-3.01

The Requires

  • php >=5.3.0

 

by Pieter de Zwart

rabbitmq queue message amqp

20/03 2017

v1.9.0

1.9.0.0 https://github.com/pdezwart/php-amqp

PHP AMQP Binding Library

  Sources   Download

PHP-3.01

The Requires

  • php >=5.3.0

 

by Pieter de Zwart

rabbitmq queue message amqp

13/03 2017

v1.9.0beta2

1.9.0.0-beta2 https://github.com/pdezwart/php-amqp

PHP AMQP Binding Library

  Sources   Download

PHP-3.01

The Requires

  • php >=5.3.0

 

by Pieter de Zwart

rabbitmq queue message amqp

13/03 2017

v1.9.0beta1

1.9.0.0-beta1 https://github.com/pdezwart/php-amqp

PHP AMQP Binding Library

  Sources   Download

PHP-3.01

The Requires

  • php >=5.3.0

 

by Pieter de Zwart

rabbitmq queue message amqp

16/02 2017

v1.8.0

1.8.0.0 https://github.com/pdezwart/php-amqp

PHP AMQP Binding Library

  Sources   Download

PHP-3.01

The Requires

  • php >=5.3.0

 

by Pieter de Zwart

rabbitmq queue message amqp

07/11 2016

v1.8.0beta2

1.8.0.0-beta2 https://github.com/pdezwart/php-amqp

PHP AMQP Binding Library

  Sources   Download

PHP-3.01

The Requires

  • php >=5.3.0

 

by Pieter de Zwart

rabbitmq queue message amqp

09/07 2016

dev-release/1.7

dev-release/1.7 https://github.com/pdezwart/php-amqp

PHP AMQP Binding Library

  Sources   Download

PHP-3.01

The Requires

  • php >=5.3.0

 

by Pieter de Zwart

rabbitmq queue message amqp

09/07 2016

v1.7.1

1.7.1.0 https://github.com/pdezwart/php-amqp

PHP AMQP Binding Library

  Sources   Download

PHP-3.01

The Requires

  • php >=5.3.0

 

by Pieter de Zwart

rabbitmq queue message amqp

26/04 2016

v1.7.0

1.7.0.0 https://github.com/pdezwart/php-amqp

PHP AMQP Binding Library

  Sources   Download

PHP-3.01

The Requires

  • php >=5.3.0

 

by Pieter de Zwart

rabbitmq queue message amqp

19/01 2016

dev-release/1.6

dev-release/1.6 https://github.com/pdezwart/php-amqp

PHP AMQP Binding Library

  Sources   Download

PHP-3.01

The Requires

  • php >=5.3.0

 

by Pieter de Zwart

rabbitmq queue message amqp

21/12 2015

v1.7.0alpha2

1.7.0.0-alpha2 https://github.com/pdezwart/php-amqp

PHP AMQP Binding Library

  Sources   Download

PHP-3.01

The Requires

  • php >=5.3.0

 

by Pieter de Zwart

rabbitmq queue message amqp

23/11 2015

v1.6.1

1.6.1.0 https://github.com/pdezwart/php-amqp

PHP AMQP Binding Library

  Sources   Download

PHP-3.01

The Requires

  • php >=5.3.0

 

by Pieter de Zwart

rabbitmq queue message amqp

11/11 2015

v1.7.0alpha1

1.7.0.0-alpha1 https://github.com/pdezwart/php-amqp

PHP AMQP Binding Library

  Sources   Download

PHP-3.01

The Requires

  • php >=5.3.0

 

by Pieter de Zwart

rabbitmq queue message amqp

03/11 2015

v1.6.0

1.6.0.0 https://github.com/pdezwart/php-amqp

PHP AMQP Binding Library

  Sources   Download

PHP-3.01

The Requires

  • php >=5.3.0

 

by Pieter de Zwart

rabbitmq queue message amqp

14/09 2015

v1.6.0beta4

1.6.0.0-beta4 https://github.com/pdezwart/php-amqp

PHP AMQP Binding Library

  Sources   Download

PHP-3.01

The Requires

  • php >=5.3.0

 

by Pieter de Zwart

rabbitmq queue message amqp

18/04 2015

v1.6.0beta3

1.6.0.0-beta3 https://github.com/pdezwart/php-amqp

PHP AMQP Binding Library

  Sources   Download

PHP-3.01

The Requires

  • php >=5.2.0

 

by Pieter de Zwart

rabbitmq queue message amqp

27/01 2015

v1.6.0beta2

1.6.0.0-beta2 https://github.com/pdezwart/php-amqp

PHP AMQP Binding Library

  Sources   Download

PHP-3.01

The Requires

  • php >=5.2.0

 

by Pieter de Zwart

rabbitmq queue message amqp