<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <title>Binds an HTTP server on the specified address and port</title> </head> <body><div class="manualnavbar" style="text-align: center;"> <div class="prev" style="text-align: left; float: left;"><a href="eventhttp.addserveralias.html">EventHttp::addServerAlias</a></div> <div class="next" style="text-align: right; float: right;"><a href="eventhttp.construct.html">EventHttp::__construct</a></div> <div class="up"><a href="class.eventhttp.html">EventHttp</a></div> <div class="home"><a href="index.html">PHP Manual</a></div> </div><hr /><div id="eventhttp.bind" class="refentry"> <div class="refnamediv"> <h1 class="refname">EventHttp::bind</h1> <p class="verinfo">(PECL event >= 1.2.6-beta)</p><p class="refpurpose"><span class="refname">EventHttp::bind</span> — <span class="dc-title">Binds an HTTP server on the specified address and port</span></p> </div> <div class="refsect1 description" id="refsect1-eventhttp.bind-description"> <h3 class="title">Description</h3> <div class="methodsynopsis dc-description"> <span class="modifier">public</span> <span class="type"><span class="type void">void</span></span> <span class="methodname"><strong>EventHttp::bind</strong></span> ( <span class="methodparam"> <span class="type">string</span> <code class="parameter">$address</code> </span> , <span class="methodparam"> <span class="type">int</span> <code class="parameter">$port</code> </span> )</div> <p class="para rdfs-comment"> Binds an HTTP server on the specified address and port. </p> <p class="para"> Can be called multiple times to bind the same HTTP server to multiple different ports. </p> </div> <div class="refsect1 parameters" id="refsect1-eventhttp.bind-parameters"> <h3 class="title">Parameters</h3> <dl> <dt> <span class="term"> <em><code class="parameter">address</code></em> </span> <dd> <p class="para"> A string containing the IP address to <em>listen(2)</em> on. </p> </dd> </dt> <dt> <span class="term"> <em><code class="parameter">port</code></em> </span> <dd> <p class="para"> The port number to listen on. </p> </dd> </dt> </dl> </div> <div class="refsect1 returnvalues" id="refsect1-eventhttp.bind-returnvalues"> <h3 class="title">Return Values</h3> <p class="para"> Returns <strong><code>TRUE</code></strong> on success. Otherwise <strong><code>FALSE</code></strong>. </p> </div> <div class="refsect1 examples" id="refsect1-eventhttp.bind-examples"> <h3 class="title">Examples</h3> <div class="example" id="example-4263"> <p><strong>Example #1 <span class="function"><strong>EventHttp::bind()</strong></span> example</strong></p> <div class="example-contents"> <div class="phpcode"><code><span style="color: #000000"> <span style="color: #0000BB"><?php<br />$base </span><span style="color: #007700">= new </span><span style="color: #0000BB">EventBase</span><span style="color: #007700">();<br /></span><span style="color: #0000BB">$http </span><span style="color: #007700">= new </span><span style="color: #0000BB">EventHttp</span><span style="color: #007700">(</span><span style="color: #0000BB">$base</span><span style="color: #007700">);<br /><br /></span><span style="color: #0000BB">$socket </span><span style="color: #007700">= </span><span style="color: #0000BB">socket_create</span><span style="color: #007700">(</span><span style="color: #0000BB">AF_INET</span><span style="color: #007700">, </span><span style="color: #0000BB">SOCK_STREAM</span><span style="color: #007700">, </span><span style="color: #0000BB">SOL_TCP</span><span style="color: #007700">);<br /><br />if (!</span><span style="color: #0000BB">$http</span><span style="color: #007700">-></span><span style="color: #0000BB">bind</span><span style="color: #007700">(</span><span style="color: #DD0000">"127.0.0.1"</span><span style="color: #007700">, </span><span style="color: #0000BB">8088</span><span style="color: #007700">)) {<br /> exit(</span><span style="color: #DD0000">"bind(1) failed\n"</span><span style="color: #007700">);<br />};<br />if (!</span><span style="color: #0000BB">$http</span><span style="color: #007700">-></span><span style="color: #0000BB">bind</span><span style="color: #007700">(</span><span style="color: #DD0000">"127.0.0.1"</span><span style="color: #007700">, </span><span style="color: #0000BB">8089</span><span style="color: #007700">)) {<br /> exit(</span><span style="color: #DD0000">"bind(2) failed\n"</span><span style="color: #007700">);<br />};<br /><br /></span><span style="color: #0000BB">$http</span><span style="color: #007700">-></span><span style="color: #0000BB">setCallback</span><span style="color: #007700">(</span><span style="color: #DD0000">"/about"</span><span style="color: #007700">, function(</span><span style="color: #0000BB">$req</span><span style="color: #007700">) {<br /> echo </span><span style="color: #DD0000">"URI: "</span><span style="color: #007700">, </span><span style="color: #0000BB">$req</span><span style="color: #007700">-></span><span style="color: #0000BB">getUri</span><span style="color: #007700">(), </span><span style="color: #0000BB">PHP_EOL</span><span style="color: #007700">;<br /> </span><span style="color: #0000BB">$req</span><span style="color: #007700">-></span><span style="color: #0000BB">sendReply</span><span style="color: #007700">(</span><span style="color: #0000BB">200</span><span style="color: #007700">, </span><span style="color: #DD0000">"OK"</span><span style="color: #007700">);<br /> echo </span><span style="color: #DD0000">"OK\n"</span><span style="color: #007700">;<br />});<br /><br /></span><span style="color: #0000BB">$base</span><span style="color: #007700">-></span><span style="color: #0000BB">dispatch</span><span style="color: #007700">();<br /></span><span style="color: #0000BB">?></span> </span> </code></div> </div> <div class="example-contents"><p>The above example will output something similar to:</p></div> <div class="example-contents screen"> <div class="cdata"><pre> 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 </pre></div> </div> </div> </div> <div class="refsect1 seealso" id="refsect1-eventhttp.bind-seealso"> <h3 class="title">See Also</h3> <ul class="simplelist"> <li class="member"> <span class="methodname"><a href="eventhttp.accept.html" class="methodname" rel="rdfs-seeAlso">EventHttp::accept()</a> - Makes an HTTP server accept connections on the specified socket stream or resource</span> </li> </ul> </div> </div><hr /><div class="manualnavbar" style="text-align: center;"> <div class="prev" style="text-align: left; float: left;"><a href="eventhttp.addserveralias.html">EventHttp::addServerAlias</a></div> <div class="next" style="text-align: right; float: right;"><a href="eventhttp.construct.html">EventHttp::__construct</a></div> <div class="up"><a href="class.eventhttp.html">EventHttp</a></div> <div class="home"><a href="index.html">PHP Manual</a></div> </div></body></html>