Às vezes, é preciso pegar a url atual para usar em alguma variável ou condicional. Veja como é simples, basta usarmos uma função para puxar esta informação.

function UrlAtual(){
 $dominio= $_SERVER['HTTP_HOST'];
 $url = "http://" . $dominio. $_SERVER['REQUEST_URI'];
 return $url;
 }

Depois, basta usar como preferir, por exemplo, se quiser apenas imprimir o resultado na tela:

echo "A URL atual é: ". UrlAtual();

Simples. 🙂

Atualização (20/09/2017) via Stack Exchange

$url ="http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";

Para suportar https:

$url = (isset($_SERVER['HTTPS']) ? "https" : "http") . "://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";

15 Comments to “Pegando a url atual com PHP”

    1. Para o caso que precisei, eu tinha que armazenar a url atual e compará-la com outras. Como precisava usar em outras partes do meu código, criei uma função.

      Mas para um uso único, o código que você fez é excelente.

      Reply
  1. Avatar de Markus Luan Markus Luan

    Amigo, queria saber se tendo duas paginas, index.php com um form e recebe.php que recebe esse form, eu teria como pegar a url da index.php através da recebe.php? Pois preciso fazer a verificação de quem está direcionando para a minha página.

    Reply
  2. Avatar de Valmir Valmir

    Teria como pegar só parte?
    Queria pegar só o nome da pagina que tá na Url. Tipo: “exemplo.php”.

    Reply
  3. Avatar de Jeff Jeff

    Por favor pode falar sobre a insegurança de usar o
    $_SERVER[‘HTTP_HOST’];
    Já li um texto mas era em inglês e não me lembro onde foi

    Grato !

    Reply
  4. Avatar de Elísio Sekualáli da Conceição Décimo Elísio Sekualáli da Conceição Décimo

    Bom dia pessoal
    Penso que poderia ser assim_

    $documentophp = str_replace( $_SERVER[‘REQUEST_URI’], ” , $_SERVER[‘PHP_SELF’] );
    echo $documentophp;

    Se der certo no seu teste dê um retorno…

    Reply

Post Comment