Skip to content
/ check Public

Está é uma biblioteca genérica voltada a efetuar testes/verificação de conectividade

License

Notifications You must be signed in to change notification settings

crphp/check

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

crphp/check

Total Downloads Latest Stable Version License

Está é uma biblioteca genérica voltada a efetuar testes/verificação de conectividade.

Está biblioteca segue os padrões descritos na PSR-2, logo, isso implica que a mesma está em conformidade com a PSR-1.

As palavras-chave "DEVE", "NÃO DEVE", "REQUER", "DEVERIA", "NÃO DEVERIA", "PODERIA", "NÃO PODERIA", "RECOMENDÁVEL", "PODE", e "OPCIONAL" neste documento devem ser interpretadas como descritas no RFC 2119. Tradução livre RFC 2119 pt-br.

  1. Referências
  2. Funcionalidades
  3. Requisitos (módulos)
  4. Baixando o pacote crphp/check
  5. Exemplos de uso
  6. Licença (MIT)

1 - Referências

2 - Funcionalidades

  • Health Check
  • Ping
  • Socket
  • Tracert / Traceroute

Os módulos abaixos já estão definidos no arquivo composer.json, isso significa que serão validados automaticamente.

  • REQUER ext-curl
  • REQUER ext-sockets

4 - Baixando o pacote crphp/check

Para a etapa abaixo estou pressupondo que você tenha o composer instalado e saiba utilizá-lo:

composer require crphp/check

Ou se preferir criar um projeto:

composer create-project --prefer-dist crphp/check nome_projeto

Caso ainda não tenha o composer instalado, obtenha este em: https://getcomposer.org/download/

5 - Exemplos de uso

Obs: este é um exemplo simples, funcionalidades adicionais estão disponíveis em cada pacote.

Health Check:

use Crphp\Check\HealthCheck;

$obj = new HealthCheck;

$obj->setRequest("http://www.terra.com.br")
    ->setAgent("Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/602.1.50 (KHTML, like Gecko) Version/10.0 Safari/602.1.50")
    ->setRedirect()
    ->doRequest();

echo ($obj->searchString('esportes')) ? 'String encontrada!' : 'String não encontrada!' ;

// Retorna um array contendo o cabeçalho da resposta
// $obj->getHeader();

// Retorna uma string contendo código http + mensagem de acordo com a 
// $obj->getHeader()['raw_info']['http_code'] . ' ' . $obj->getHeader()['http_code_message'];

// Ao manter htmlentities o código html será mostrado. Ao omitir htmlentities o conteúdo será renderizado no navegador.
// echo htmlentities($obj->getResponse());

Ping

use Crphp\Check\Ping;

$output = Ping::run('www.google.com.br');

if (is_array($output)) {
    echo '<pre>' . Ping::toString($output) . '</pre>';
} else {
    echo 'Não foi possível executar o ping';
}

Socket

use Crphp\Check\Socket;

$result = Socket::run( 'www.google.com.br', 80);
echo ($result === true) ? 'Tudo ok ;)' : $result;

Traceroute/Tracert

use Crphp\Check\Traceroute;

$output = Traceroute::run("google.com.br", 2);

if (is_array($output)) {
    echo '<pre>' . Traceroute::toString($output) . '</pre>';
} else {
    echo 'Não foi possível executar o tracer';
}

6 - Licença (MIT)

Todo o conteúdo presente neste diretório segue o que determina a licença MIT.