Redirecionar em PHP
-
Use a função
header()
em PHP para enviar URL como cabeçalho HTTP para o navegador -
Use um método auxiliar em PHP para redirecionar para uma página diferente usando a função
header()
com código de status - Use o buffer de saída em JavaScript para redirecionar para outra página
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>';
?>
Subodh is a proactive software engineer, specialized in fintech industry and a writer who loves to express his software development learnings and set of skills through blogs and articles.
LinkedIn