Por supuesto que se puede redireccionar con PHP!!!
Te sugiero que leas el artículo sobre redireccionar con PHP.
Ahora bien, ten en cuenta que a diferencia de lo que estás haciendo con ASP, en PHP mediante este método estás creando una cabecera HTTP que le dice al navegador que redireccione a otro sitio, con lo que es importante que se ejecute antes de que exista ninguna salida previa al navegador, ya sea de texto o HTML.
De lo contrario, en el momento de sacar algo por pantalla, se está creando una cabecera con el tipo de contenido utilizado (text/hml
, text/plain
, etc) y una vez que se crea una cabecera, no se puede modificar.
Y es entonces cuando recibes ese error; que te dice que no puede modificar la información de la cabecera, porque ya se ha enviado al navegador, y además te dice la línea en la que se envió esa cabecera.
En fin, espero te que sirva para disipar tus dudas.
Y bueno, la traducción de tu código ASP a PHP sería algo así:
<?php
if ($x == 0):
header("Location: pag0.asp");
elseif ($x == 1):
header("Location: pag1.asp");
elseif ($x == 2):
header("Location: pag2.asp");
endif;
?>
Échale un vistazo a la sintaxis alternativa para las estructuras de control del manual oficial de PHP, dónde encontrarás diferentes formas de construirlas, ya que seguramente hay alguna (como el anterior ejemplo) que se acercan más a VB, ASP y/o a lo que estás acostumbrado.