#Ratchet A PHP 5.3 (PSR-0 compliant) application for serving and consuming sockets. Build up your application (like Lego!) through simple interfaces using the decorator pattern. Re-use your application without changing any of its code just by wrapping it in a different protocol. --- ##WebSockets * Supports the HyBi-10 and Hixie76 protocol versions * Tested on Chrome 14, Firefox 7, Safari 5, iOS 4.2 --- ###A quick server example ```php _clients = new \SplObjectStorage; } public function onOpen(SocketInterface $conn) { $this->_clients->attach($conn); } public function onRecv(SocketInterface $from, $msg) { $stack = new Composite; foreach ($this->_clients as $client) { if ($from != $client) { $message = new SendMessage($client); $message->setMessage($msg); $stack->enqueue($message); } } return $stack; } public function onClose(SocketInterface $conn) { $this->_clients->detach($conn); } } // Run the server application through the WebSocket protocol $server = new Server(new Socket, new WebSocket(new Chat)); $server->run('0.0.0.0', 80); ```