Redirigir en PHP

Subodh Poudel 30 enero 2023
  1. Utilice la función header() en PHP para enviar URL como encabezado HTTP al navegador
  2. Use un método auxiliar en PHP para redirigir a una página diferente usando la función header() con código de estado
  3. Utilice el búfer de salida en JavaScript para redirigir a otra página
Redirigir en PHP

Demostraremos una forma de redirigir una página a otra página en PHP usando la función header() enviando el encabezado HTTP al navegador. Este método utiliza la función incorporada header() en PHP, que toma Location como parámetro cuyo valor es la URL de la página deseada.

También introduciremos un método para redirigir una página a otra usando una función auxiliar con URL y códigos de estado como parámetros y luego llamaremos a la función header() dentro del método.

Mostraremos otra forma de redireccionar a otra página usando javascript dentro de echo en PHP usando window.location para almacenar la URL de la página a ser redirigida.

Utilice la función header() en PHP para enviar URL como encabezado HTTP al navegador

Podemos utilizar la función header(), que toma como parámetro Location. El valor de Location es la URL de la página deseada, que debemos redirigir. Tenga en cuenta que la función de encabezado debe escribirse encima de las etiquetas HTML y los textos del archivo. La función header() no se ejecuta después de que se envían otros datos al navegador. Debe ser la primera línea de código que se ejecutará.

Por ejemplo, almacene la URL http://facebook.com en una variable redirect_page. Utilice la función header() y especifique la variable redirect_page en Location en la función. Luego, llame a la función die().

En el siguiente ejemplo, la URL de Facebook se almacena en la variable redirect_page. La variable se utiliza en la función de encabezado. Cuando se ejecuta el siguiente script, la página redirige a la página de inicio de Facebook. La función die() impide que el script continúe después de ejecutar la función header() para evitar un comportamiento inesperado. Consulte el manual de php para obtener información sobre la función header(). Asegúrese de colocar el archivo PHP dentro del servidor web local para ejecutarlo en su navegador.

Código de ejemplo:

# php 7.x
<?php
$redirect_page = 'http://facebook.com';
header('Location:'  .$redirect_page);
die();
?>

Use un método auxiliar en PHP para redirigir a una página diferente usando la función header() con código de estado

Usaremos una función auxiliar redirect para redirigir una página a una página diferente.

Defina un método redirect. Tome la URL y el código de estado como argumentos en la función. Escriba la función header() dentro del método. Tome la URL de Location y el código de estado como argumentos para la función header(). Luego, llame a la función die(). El script muere después de la ejecución de la función header() cuando se encuentra con la función die(). Fuera de la definición de la función, llame a la función redirect proporcionando la URL http://example.com/ como parámetro. Invoca la función con la URL como parámetro.

En el siguiente ejemplo, el código de estado 301 se utiliza para redirigir a otra página de forma permanente. El script redirige la página actual a http://example.com/. Consulte MDN Web Docs para obtener más información sobre el código de estado 303.

Código de ejemplo:

#php 7.x
<?php
function redirect($url, $statusCode = 301) {
    header('Location: '  . $url, $statusCode);
    die();
}
redirect('http://example.com/');
?>

Utilice el búfer de salida en JavaScript para redirigir a otra página

Usaremos JavaScript dentro de PHP para redirigir una página a otra página. En el siguiente ejemplo, redirigimos una página a la página de inicio de Twitter.

Escriba el tipo de secuencia de comandos de la etiqueta como text/javascript para escribir código JavaScript. Utilice window.location para almacenar la URL - http://www.twitter.com. Imprima toda la etiqueta script utilizando echo.

Este método se denomina salida en búfer. Es un método más rápido para redirigir a otra página. Consulte el sitio oficial de PHP para obtener más información sobre la salida almacenada en búfer.

Código de ejemplo:

#php 7.x
<?php
echo '<script type="text/javascript">
    window.location = "http://www.twitter.com/"
    </script>';
?>
Subodh Poudel avatar Subodh Poudel avatar

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