Trabalhando com Sockets no ReactPHP \| TreinaWeb               Promoção no ar   Matricule-se agora e garanta **54% de desconto**  

  Termina em   Tempo restante da oferta: 13 Horas 

 13 Min 

 35 Seg 

   Tempo restante da oferta: 13 13 35 

  [Assinar →](https://www.treinaweb.com.br/checkout/pagamento/plano/anual?cupom=TW-SCLIENTE26) 

   [                ](https://www.treinaweb.com.br)  Explorar  

 [ Quanto custa? ](#assinatura) [ FAQ ](https://www.treinaweb.com.br#faq) [Matricule-se](#assinatura) [ Entrar ](https://www.treinaweb.com.br/login) 

     [ Início ](https://www.treinaweb.com.br) [ Artigos ](https://www.treinaweb.com.br/blog) Trabalhando com Sockets no ReactPHP  [ PHP ](https://www.treinaweb.com.br/blog/categoria/php) 

# Trabalhando com Sockets no ReactPHP

 Veremos neste artigo como usar o componente de socket do ReactPHP para criar um chat pelo terminal. Além disso, veremos as bases para a construção de servidores TCP/IP.

 [ Kennedy Tedesco ](https://www.treinaweb.com.br/blog/autor/kennedy-tedesco) 7 anos atrás

  ![](https://dkrn4sk0rn31v.cloudfront.net/uploads/2019/05/01125223/react-php-imagem.png)  

No primeiro artigo da série fizemos uma [Introdução à programação assíncrona em PHP usando o ReactPHP](https://www.treinaweb.com.br/blog/introducao-a-programacao-assincrona-em-php-usando-o-reactphp/), depois vimos sobre [Promises no ReactPHP](https://www.treinaweb.com.br/blog/promises-no-reactphp/). Hoje falaremos sobre *Sockets*, um assunto muito relevante para a criação de aplicações cliente-servidor.

[  ![PHP Avançado](https://d2knvm16wkt3ia.cloudfront.net/assets/svg-icon/php.svg)   Curso PHP Avançado Conhecer o curso ](https://www.treinaweb.com.br/curso/php-avancado)

Antes, entretanto, tem dois artigos que muito recomendo você ler antes de continuar neste, que são estes:

- [Uma introdução a TCP, UDP e Sockets](https://www.treinaweb.com.br/blog/uma-introducao-a-tcp-udp-e-sockets/): Uma introdução (base teórica) para TCP, UDP e Sockets, principalmente para desenvolvedores que desejam programar com Sockets.
- [Streams no PHP](https://www.treinaweb.com.br/blog/streams-no-php/ "Streams no PHP"): O essencial para se entender e trabalhar com streams no PHP.
- [Programação de Sockets em PHP](https://www.treinaweb.com.br/blog/programacao-de-sockets-em-php/): Uma introdução à programação de sockets com o PHP.

## Criando o primeiro servidor

No seu projeto, instale o componente:

```bash
$ composer require react/socket:^1.3

```

Não vamos instalar manualmente o componente *Event Loop* pois ele já é uma dependência de `react/socket`.

Já estamos prontos para criar o nosso primeiro servidor, baseado no do artigo sobre [Programação de Sockets em PHP](https://www.treinaweb.com.br/blog/programacao-de-sockets-em-php/):

```php
