Recupere o URL completo em PHP

Retrieve Full Url 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 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 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 for usado no URL da página atual.
$ _SERVER [‘HTTP_HOST’] Ele 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 instruçã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. perdido) função é usada para verificar se $ _SERVER [‘HTTPS’] é um conjunto ou não e, se definido, verifique se o valor de $ _SERVER [‘HTTPS’] é 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
$ domínio = $ _SERVER['HTTP_HOST'];
// Leia o recurso solicitado
$ resource = $ _SERVER['REQUEST_URI'];
// Descubra o protocolo do url atual
E se( perdido ($ _SERVER['HTTPS']) && $ _SERVER['HTTPS'] === 'sobre')
$ protocolo = 'https';
outro
$ 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
jogou fora '

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

'
. $ url;?>

Saída:





A seguinte saída aparecerá após a execução do script no 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 é realizada usando o operador ternário neste script. perdido) 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
$ protocolo = ( perdido ($ _SERVER['HTTPS']) && $ _SERVER['HTTPS']
== 'sobre'?'https' : 'http');
// Leia o nome de domínio da página atual
$ domínio = $ _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
jogou fora '

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

'
. $ url;
?>

Saída:

A seguinte saída aparecerá após a execução do script no 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 desligado, em seguida, ele verificará o valor de $ _SERVER [‘SERVER_PORT’] para descobrir o protocolo do 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
$ protocolo = ((! vazio ($ _SERVER['HTTPS']) && $ _SERVER['HTTPS']
! = 'desligado') || $ _SERVER['PORTA DO SERVIDOR'] == 443)?'https: //' : 'http: //';
// Leia o nome de domínio da página atual
$ domínio = $ _SERVER['HTTP_HOST'];
// Leia o recurso solicitado
$ resource = $ _SERVER['REQUEST_URI'];
// Leia o valor da string de consulta
$ consulta = $ _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
jogou fora '

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

'
. $ url;
// Imprime a parte da string de consulta
jogou fora '

A string de consulta é:

'
. $ consulta;
?>

Saída:

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 no servidor com a string de consulta. A saída 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.