<?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();