php

Recupere o URL completo em PHP

Recupere o URL completo em PHP
Dois tipos de variáveis ​​globais podem ser usados ​​em PHP: a variável superglobal e a variável definida pelo usuário. $ _SERVER é uma variável de matriz superglobal que é usada para recuperar o caminho completo da página atual. O protocolo (HTTP ou HTTPS) do URL também é necessário para obter o URL completo da página. Se $ _SERVER ['HTTPS'] retorna 'sobre', então HTTPS será usado com o endereço de URL, caso contrário, HTTP será usado. Como o endereço de URL completo da página atual pode ser recuperado usando o $ _SERVER array foi explicado neste tutorial.

Variáveis ​​Necessárias

As seguintes variáveis ​​superglobais são necessárias para descobrir o endereço URL da página atual.

Variáveis ​​Superglobais Objetivos
$ _SERVER ['HTTPS'] Retorna sobre se o protocolo HTTPS é usado no URL da página atual.
$ _SERVER ['HTTP_HOST'] Retorna o nome do servidor da página atual.
$ _SERVER ['REQUEST_URI'] Ele retorna o nome do recurso solicitado.
$ _SERVER ['SERVER_PORT'] Ele retorna o número da porta do servidor.
$ _SERVER ['QUERY_STRING'] Ele retorna o valor da string de consulta se existir no endereço URL da página atual.

Exemplo 1: exibir o URL da página atual usando uma declaração condicional

O exemplo a seguir mostra como a declaração condicional pode ser usada para obter o protocolo usado na URL da página atual. Crie um arquivo PHP com o seguinte script.

O valor de $ _SERVER ['HTTP_HOST'] é usado para obter o nome de domínio do URL atual. O valor de $ _SERVER ['REQUEST_URI'] é usado para obter o nome do recurso solicitado. isset () função é usada para verificar se $ _SERVER ['HTTPS'] é um conjunto ou não, e se definido, então verifique o valor de $ _SERVER ['HTTPS'] se é sobre ou não. Em seguida, os valores dessas três variáveis ​​são combinados com '//:' para recuperar o URL completo da página atual.

// Leia o nome de domínio da página atual
$ domain = $ _SERVER ['HTTP_HOST'];
// Leia o recurso solicitado
$ resource = $ _SERVER ['REQUEST_URI'];
// Descubra o protocolo do url atual
if (isset ($ _ SERVER ['HTTPS']) && $ _SERVER ['HTTPS'] === 'on')
$ protocolo = "https";
senão
$ protocolo = "http";
// Combine todas as partes para obter o endereço URL completo
$ url = $ protocolo.": //".$ domínio.$ resource;
// Imprime o endereço URL da página atual
echo "

O endereço URL do atual
a página é:

". $ url;?>

Resultado:

A seguinte saída aparecerá após a execução do script do servidor. O valor de $ _SERVER ['HTTPS'] não é sobre para o servidor local. Portanto, a saída mostra o http protocolo para o URL atual.

Exemplo 2: exibir o URL da página atual usando o operador ternário

O exemplo a seguir mostra como obter o URL completo da página atual usando o operador ternário. Crie um arquivo PHP com o seguinte script.

Se a condição é usada no exemplo anterior para descobrir qual protocolo é usado no URL da página atual. A mesma tarefa é feita usando o operador ternário neste script. isset () função é usada para verificar se $ _SERVER ['HTTPS'] é um conjunto ou não, e se o valor de $ _SERVER ['HTTPS'] é sobre, então, o operador ternário retornará HTTPS, caso contrário, retornará HTTP. As outras partes do URL são recuperadas e impressas como no exemplo anterior.

// Descubra o protocolo do url atual
$ protocol = (isset ($ _ SERVER ['HTTPS']) && $ _SERVER ['HTTPS']
== 'ligado' ? "https": "http");
// Leia o nome de domínio da página atual
$ domain = $ _SERVER ['HTTP_HOST'];
// Leia o recurso solicitado
$ resource = $ _SERVER ['REQUEST_URI'];
// Combine todas as partes para obter o endereço URL completo
$ url = $ protocolo.": //".$ domínio.$ resource;
// Imprime o endereço URL da página atual
echo "

O endereço URL da página atual é:

". $ url;
?>

Resultado:

A seguinte saída aparecerá após a execução do script do servidor. O valor de $ _SERVER ['HTTPS'] não é sobre para o servidor local. Portanto, a saída mostra o protocolo HTTP para o URL atual.

Exemplo 3: exibir o URL da página atual com base no número da porta

Nos dois exemplos anteriores, o valor de $ _SERVER ['HTTPS'] é usado para descobrir o protocolo do URL atual da página, e nenhuma string de consulta é usada com o URL. O exemplo a seguir mostra como a variável $ _SERVER ['SERVER_PORT'] pode ser usada para descobrir o protocolo e recuperar o endereço URL completo com a string de consulta. Crie um arquivo PHP com o seguinte script.

Aqui, várias condições lógicas e operador ternário são usados ​​para descobrir o protocolo. Se o valor de $ _SERVER ['HTTPS'] estiver vazio ou definido como fora, então ele irá verificar o valor de $ _SERVER ['SERVER_PORT'] para descobrir o protocolo da URL atual. A variável $ _SERVER ['QUERY_STRING'] é usada para recuperar o valor da string de consulta do URL.

// Descubra o protocolo do url atual
$ protocol = ((!vazio ($ _ SERVER ['HTTPS']) && $ _SERVER ['HTTPS']
!= 'desligado') || $ _SERVER ['SERVER_PORT'] == 443) ? "https: //": "http: //";
// Leia o nome de domínio da página atual
$ domain = $ _SERVER ['HTTP_HOST'];
// Leia o recurso solicitado
$ resource = $ _SERVER ['REQUEST_URI'];
// Leia o valor da string de consulta
$ query = $ _SERVER ['QUERY_STRING'];
// Combine todas as partes para obter o endereço URL completo
$ url = $ protocolo.$ domínio.$ resource;
// Imprime o endereço URL da página atual
echo "

O endereço URL completo da página atual é:

". $ url;
// Imprime a parte da string de consulta
echo "

A string de consulta é:

". $ query;
?>

Resultado:

A seguinte saída aparecerá após a execução do script acima do servidor sem qualquer string de consulta. Nenhuma string de consulta é fornecida no URL. Portanto, a saída mostra a string de consulta vazia.

A seguinte saída aparecerá após a execução do script acima a partir do servidor com a string de consulta. O resultado a seguir mostra o endereço URL com a string de consulta e a string de consulta separadamente.

Conclusão

Diferentes maneiras de recuperar o URL completo da página atual são mostradas neste tutorial usando vários exemplos. A maneira de separar o URL e a string de consulta também é mostrada neste tutorial. Esperançosamente, este tutorial ajudará os leitores a saber como ler o URL completo da página atual usando o script PHP.

Adicione gestos do mouse ao Windows 10 usando essas ferramentas gratuitas
Nos últimos anos, os computadores e sistemas operacionais evoluíram muito. Houve um tempo em que os usuários tinham que usar comandos para navegar pel...
Controle e gerencie o movimento do mouse entre vários monitores no Windows 10
Gerenciador de mouse com tela dupla permite que você controle e configure o movimento do mouse entre vários monitores, diminuindo seus movimentos pert...
WinMouse permite que você personalize e melhore o movimento do ponteiro do mouse no PC com Windows
Se você quiser melhorar as funções padrão do ponteiro do mouse, use um freeware WinMouse. Ele adiciona mais recursos para ajudá-lo a obter o máximo do...