HOWTO · PHP
Redirecionar em PHP
Este tutorial demonstra como redirecionar um usuário de uma página para uma página diferente em PHP
Demonstraremos uma maneira de redirecionar uma página para outra página em PHP usando a função header() enviando o cabeçalho HTTP para o navegador. Este método usa a função header() embutida no PHP, que leva Location como um parâmetro cujo valor é a URL da página desejada.
Também apresentaremos um método para redirecionar uma página para outra usando uma função auxiliar com URL e códigos de status como parâmetros e, em seguida, chamaremos a função header() dentro do método.
Mostraremos outra maneira de redirecionar para outra página usando javascript dentro de echo em PHP usando window.location para armazenar a URL da página a ser redirecionada.
Use a função header() em PHP para enviar URL como cabeçalho HTTP para o navegador
Podemos usar a função header(), que leva Location como parâmetro. O valor de Location é o URL da página desejada, que precisamos redirecionar. Observe que a função de cabeçalho deve ser escrita acima das tags HTML e textos no arquivo. A função header() não é executada depois que outros dados são enviados ao navegador. Deve ser a primeira linha de código a ser executada.
Por exemplo, armazene o url http://facebook.com em uma variável redirect_page. Use a função header() e especifique a variável redirect_page em Location na função. Então, chame a função die().
No exemplo abaixo, a URL do Facebook é armazenada na variável redirect_page. A variável é usada na função de cabeçalho. Quando o script a seguir é executado, a página redireciona para a página inicial do Facebook. A função die() impede que o script continue após a execução da função header() para evitar um comportamento inesperado. Por favor, verifique o manual php para informações sobre a função header(). Certifique-se de colocar o arquivo PHP dentro do servidor da web local para executá-lo em seu navegador.
Código de exemplo:
# php 7.x
<?php
$redirect_page = 'http://facebook.com';
header('Location:' .$redirect_page);
die();
?>
Use um método auxiliar em PHP para redirecionar para uma página diferente usando a função header() com código de status
Usaremos uma função auxiliar redirect para redirecionar uma página para uma página diferente.
Defina um método redirect. Considere o URL e o código de status como argumentos na função. Escreva a função header() dentro do método. Considere o URL para Location e o código de status como argumentos para a função header(). Então, chame a função die(). O script morre após a execução da função header() quando encontra a função die(). Fora da definição da função, chame a função redirect fornecendo o URL http://example.com/ como parâmetro. Ele invoca a função com o URL como parâmetro.
No exemplo abaixo, o código de status 301 é usado para redirecionar para outra página permanentemente. O script redireciona a página atual para http://example.com/. Verifique MDN Web Docs para saber mais sobre o código de status 303.
Código de exemplo:
#php 7.x
<?php
function redirect($url, $statusCode = 301) {
header('Location: ' . $url, $statusCode);
die();
}
redirect('http://example.com/');
?>
Use o buffer de saída em JavaScript para redirecionar para outra página
Usaremos JavaScript dentro do PHP para redirecionar uma página para outra página. No exemplo abaixo, redirecionamos uma página para a página inicial do Twitter.
Escreva o tipo de script de tag como text/javascript para escrever algum código JavaScript. Use window.location para armazenar o URL - http://www.twitter.com. Imprima toda a tag script usando echo.
Esse método é chamado de saída de buffer. É um método mais rápido para redirecionar para outra página. Por favor, verifique o site oficial do PHP para saber mais sobre saída em buffer.
Código de exemplo:
#php 7.x
<?php
echo '<script type="text/javascript">
window.location = "http://www.twitter.com/"
</script>';
?>