| 
<?php
 use React\EventLoop\Factory;
 
 require __DIR__ . '/../vendor/autoload.php';
 
 $loop = Factory::create();
 
 // connect to www.google.com:80 (blocking call!)
 // for illustration purposes only, should use react/socket instead
 $stream = stream_socket_client('tcp://www.google.com:80');
 if (!$stream) {
 exit(1);
 }
 stream_set_blocking($stream, false);
 
 // send HTTP request
 fwrite($stream, "GET / HTTP/1.1\r\nHost: www.google.com\r\nConnection: close\r\n\r\n");
 
 // wait for HTTP response
 $loop->addReadStream($stream, function ($stream) use ($loop) {
 $chunk = fread($stream, 64 * 1024);
 
 // reading nothing means we reached EOF
 if ($chunk === '') {
 echo '[END]' . PHP_EOL;
 $loop->removeReadStream($stream);
 fclose($stream);
 return;
 }
 
 echo $chunk;
 });
 
 $loop->run();
 
 |