Opens a network connection to an AMQP broker using configured authentication and host settings.
The examples focus on the operation itself, including the important distinction: isConnected only checks the current connection state, without initiating a connection.
What It Does
Use the examples below to observe the behavior on a small dataset before extending it to application code.
Syntax and Return Value
AMQPConnection::connect(): void
The displayed signature describes the API or identifies any correction or optional dependency. When a parameter is optional, supply it only when the task requires it.
Example 1: Basic Use
Requires the PECL amqp extension and a reachable configured broker. Do not assume the broker exists on a plain PHP installation; transactions apply only to the AMQP channel.
<?php
$connection = new AMQPConnection([
"host" => getenv("AMQP_HOST") ?: "127.0.0.1",
"login" => getenv("AMQP_USER") ?: throw new RuntimeException("AMQP_USER is required"),
"password" => getenv("AMQP_PASSWORD") ?: throw new RuntimeException("AMQP_PASSWORD is required"),
]);
$connection->connect();
echo $connection->isConnected() ? "connected" : "disconnected";
$connection->disconnect();
This example is meant for a configured application environment; output depends on the installed extension, external service, or database contents.
Example 2: Checking Behavior
Requires the PECL amqp extension and a reachable configured broker. Do not assume the broker exists on a plain PHP installation; transactions apply only to the AMQP channel. The AMQPConnection object reports local connection state, not guaranteed remote broker health.
<?php
$connection = new AMQPConnection([
"host" => getenv("AMQP_HOST") ?: "127.0.0.1",
"login" => getenv("AMQP_USER") ?: throw new RuntimeException("AMQP_USER is required"),
"password" => getenv("AMQP_PASSWORD") ?: throw new RuntimeException("AMQP_PASSWORD is required"),
]);
$connection->connect();
echo $connection->isConnected() ? "connected to broker" : "offline";
$connection->disconnect();
This example is meant for a configured application environment; output depends on the installed extension, external service, or database contents.
Example 3: Practical Example
Requires the PECL amqp extension and a reachable configured broker. Do not assume the broker exists on a plain PHP installation; transactions apply only to the AMQP channel. The AMQPConnection object reports local connection state, not guaranteed remote broker health.
<?php
$connection = new AMQPConnection([
"host" => getenv("AMQP_HOST") ?: "localhost",
"login" => getenv("AMQP_USER") ?: throw new RuntimeException("AMQP_USER is required"),
"password" => getenv("AMQP_PASSWORD") ?: throw new RuntimeException("AMQP_PASSWORD is required"),
]);
$connection->connect();
echo $connection->isConnected() ? "connected" : "disconnected";
$connection->disconnect();
echo "amqp lifecycle checked";
This example is meant for a configured application environment; output depends on the installed extension, external service, or database contents.
Important Behavior and Edge Cases
The AMQP extension and reachable RabbitMQ-compatible broker are required; connection failures can throw AMQPConnectionException.
This API is supplied by an optional extension that is not installed in the local test runtime, or requires a different PHP version. The example must be verified in a matching environment.
Comparison with Related Approaches
| Approach | Difference |
|---|---|
| AMQPConnection::connect | Opens a network connection to an AMQP broker using configured authentication and host settings. |
| Related API or alternative | isConnected only checks the current connection state, without initiating a connection. |
Common Beginner Mistakes
| Mistake | Correct approach |
|---|---|
| Ignoring the operation-specific limits | The AMQP extension and reachable RabbitMQ-compatible broker are required; connection failures can throw AMQPConnectionException. |
| Confusing it with a related API | isConnected only checks the current connection state, without initiating a connection. |
Key Takeaways
- Opens a network connection to an AMQP broker using configured authentication and host settings.
- The AMQP extension and reachable RabbitMQ-compatible broker are required; connection failures can throw AMQPConnectionException.
- isConnected only checks the current connection state, without initiating a connection.
Use AMQPConnection::connect when its documented behavior matches the problem. Test the relevant edge cases in your own runtime before deploying it.