📆 TDC Floripa 2025: Inscrições com 20% DE DESCONTO e INGRESSOS GRATUITOS 🚀

Como usar sockets em servidor PHP

Publicado em 05/07/2018

Atualizado em 03/06/2024
servidor php

O PHP fez aniversário há poucas semanas, mas aqui na KingHost ainda é tempo de homenagear uma das linguagens mais usadas no mundo. Hoje vou exemplificar como usar sockets em servidor PHP de uma forma simples.

Existem diversas formas de se fazer um servidor web, porém muita gente subestima o poder do PHP. Ainda que seja limitada quando comparada às outras alternativas, a simplicidade da implementação é algo a ser considerado.

Basta você abrir um socket e já tem uma possibilidade de conexão.

O que são sockets?

Um socket é basicamente o “fim da linha” para um fluxo de dados. Esse “fim da linha” tem um endereço, que é a combinação de um endereço IP com uma porta de entrada do servidor (ou cliente).

Podemos exemplificar isso com uma analogia.

Por exemplo, imagine que você tem que chegar em algum lugar e escolhe o transporte público como meio de locomoção. Você vai até o ponto (que nesse caso é o socket), e espera seu ônibus (a conexão). Nessa situação você seria o fluxo de dados, ou os pacotes, por exemplo.

Outra maneira é imaginar uma ligação telefônica, onde o telefone é o socket, a voz os dados, a linha a conexão e o número o endereço.

Como utilizar sockets em servidor php?

Agora que você já entendeu, vamos à prática, por partes:

A primeira coisa a se fazer é criar um socket utilizando os protocolos desejados. Nesse caso estamos definindo que será uma conexão síncrona TCP utilizando IPV4.

socket 1

O próximo passo é atribuir o endereço em que o socket está sendo aberto. Lembrando que se a porta escolhida já estiver sendo usada, não vai funcionar.

socket 2

Agora nós fazemos com que o socket espere uma conexão:

socket 3

Assim que receber uma conexão, é necessário aceitá-la, para que possam ser feitas requisições. Após isso, a requisição (neste caso, o que estiver no endereço) é lida. Dependendo se os arquivos existirem ou não, são retornadas as respectivas mensagens do servidor (200 para sucesso e 404 caso não exista o arquivo) e a página é apresentada ou aparece a mensagem de erro.

socket 4

Logo após isso gravamos o buffer no socket e encerramos a conexão, e fazemos com que isso se torne um loop para que continue sendo possível realizar requisições.

socket 5

Conclusão Sockets em Servidor PHP

Pessoal, este foi um exemplo simples que mostra como pode ser fácil tratar conexões utilizando sockets, além de ser um bom exercício para praticar. (Sei que você veio até aqui por causa daquele trabalho da faculdade, né! 😉 )

Por hoje era isso pessoa! Espero que essa linguagem que basicamente “roda” a Internet continue esse caminho de evolução que vem tendo nesses 23 anos de história. E, claro, que seja cada vez mais versátil, mais útil e mais robusta.

Quer ler mais conteúdos sobre PHP? Se liga no Blog da KingHost.

O que você achou deste conteúdo?

O que você achou deste conteúdo?

Gabriel
Gabriel Henriques
Estudante de Análise e Desenvolvimento de Sistemas, entusiasta de tecnologia e apaixonado por ciências.
Gabriel
Gabriel Henriques
Estudante de Análise e Desenvolvimento de Sistemas, entusiasta de tecnologia e apaixonado por ciências.

Compartilhe esse conteúdo com alguém que possa gostar também

Receba todo mês conteúdos
incríveis como esses para
seguir evoluindo

Conteúdos relacionados

JavaScript é uma das linguagens de programação mais populares do mundo, amplamente utilizada para o desenvolvimento de aplicações web dinâmicas. Assim, para facilitar o trabalho nesta área, diversas bibliotecas JavaScript foram criadas.  Neste artigo, vamos explorar o que são bibliotecas JavaScript, como utilizá-las e quais são as principais opções disponíveis no mercado. Você vai ter...
No cenário tecnológico em constante evolução, a busca por eficiência, agilidade e entrega contínua de valor se tornou primordial. É nesse contexto que o DevOps emerge como uma abordagem revolucionária, unindo as equipes de desenvolvimento (Dev) e operações (Ops) em prol de um objetivo comum: o sucesso do produto e a satisfação do cliente. Neste...
A inteligência artificial (IA) não é mais uma promessa distante, mas sim uma realidade que está remodelando o cenário do desenvolvimento de aplicativos. A demanda por apps que não apenas funcionam, mas que também aprendem, se adaptam e antecipam as necessidades dos usuários está em alta.  Integrar a IA em seus aplicativos oferece uma gama...

Mensagens para você