✅ Notícias, temas e plug-ins da WEB e do WordPress. Aqui compartilhamos dicas e as melhores soluções para sites.

Usando cURL para determinar se o URL especificado é uma página válida

8

No início deste mês, escrevi sobre encontrar o destino de um redirecionamento usando cURL em PHP. Esta pode ser uma função útil para usar sempre que:

  • você sabe que os URLs com os quais está lidando vão redirecionar,
  • você sabe que o número de redirecionamentos será limitado a um.

É verdade que, neste último caso, está se tornando mais difícil porque sites como, digamos, o Twitter, têm vários redirecionamentos antes de você chegar ao destino.

Mas isso é assunto para outro post (a menos que você queira apenas implementar uma maneira recursiva ou iterativa de trabalhar com solicitações até encontrar o destino final).

De qualquer forma, há outra coisa que também pode ser útil sempre que você estiver trabalhando com redirecionamentos e com cURL, e isso é determinar se a URL especificada leva você a uma página válida.

A URL especificada é uma página válida?

O código neste post não será totalmente diferente do que você pode ter visto em posts anteriores; no entanto, as principais coisas que vamos fazer são as seguintes:

  • inicialize cURL com o URL que nos foi fornecido,
  • defina o valor CUROPT_RETURNTRANSFER como true (que retorna o valor da transferência como uma string),
  • e, em seguida, avalie o código de status HTTP retornado da solicitação.

Você pode ler tudo sobre os códigos neste site, mas os dois com os quais estamos mais preocupados, pelo menos para este post, são 404 e 200.

Usando cURL para determinar se o URL especificado é uma página válida

Então, primeiro, o código:

E aqui está como funciona:

  1. a função aceita uma URL como argumento,
  2. inicializamos o cURL com as configurações adequadas e, em seguida, executamos a solicitação,
  3. lemos o valor do código de status armazenado na resposta,
  4. fechamos o handle cURL e então retornamos a avaliação do código de status.

Parece bastante simples, não é?

E, em geral, é. Você pode ter que fazer alguns ajustes por conta própria para seu código de status, ou você pode querer analisar as informações da resposta. Isso pode ser feito analisando a string, usando expressões regulares ou mais. Mas isso está além do escopo deste post.

No mínimo, isso informará se o URL para o qual você está sendo direcionado é uma página válida ou não.

Fonte de gravação: tommcfarlin.com

Este site usa cookies para melhorar sua experiência. Presumiremos que você está ok com isso, mas você pode cancelar, se desejar. Aceitar Consulte Mais informação