EventHttp::bind

(PECL event >= 1.2.6-beta)

EventHttp::bindBinds an HTTP server on the specified address and port

Descrição

publicEventHttp::bind(string$address, int$port): void

Binds an HTTP server on the specified address and port.

Can be called multiple times to bind the same HTTP server to multiple different ports.

Parâmetros

address

A string containing the IP address to listen(2) on.

port

The port number to listen on.

Valor Retornado

Retorna true em caso de sucesso ou false em caso de falha.

Exemplos

Exemplo #1 EventHttp::bind() example

<?php
$base
= new EventBase();
$http = new EventHttp($base);

$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);

if (!
$http->bind("127.0.0.1", 8088)) {
exit(
"bind(1) failed\n");
};
if (!
$http->bind("127.0.0.1", 8089)) {
exit(
"bind(2) failed\n");
};

$http->setCallback("/about", function($req) {
echo
"URI: ", $req->getUri(), PHP_EOL;
$req->sendReply(200, "OK");
echo
"OK\n";
});

$base->dispatch();
?>

O exemplo acima produzirá algo semelhante a:

Client: $ nc 127.0.0.1 8088 GET /about HTTP/1.0 Connection: close HTTP/1.0 200 OK Content-Type: text/html; charset=ISO-8859-1 Connection: close $ nc 127.0.0.1 8089 GET /unknown HTTP/1.0 Connection: close HTTP/1.1 404 Not Found Content-Type: text/html Date: Wed, 13 Mar 2013 04:14:41 GMT Content-Length: 149 Connection: close <html><head><title>404 Not Found</title></head><body><h1>Not Found</h1><p>The requested URL /unknown was not found on this server.</p></body></html> Server: URI: /about OK

Veja Também

  • EventHttp::accept() - Makes an HTTP server accept connections on the specified socket stream or resource
To Top