Qué onda, ese efecto es posible con la función SLEEP, que duerme a tu script por la cantidad de segundos que le quieras poner.
El problema es que no aparecerá nada en pantalla del navegador, ya que todo el contenido de salida es almacenado en un buffer previo y tienes que poner instrucciones adicionales para liberar ese buffer, que en este caso son las instrucciones
ob_flush() y
flush() y
aquí puedes ver comentarios de por qué tienen que ir ambas.
Por ejemplo, el siguiente código mostrará una línea cada segundo en la pantalla del navegador.
Código PHP:
<?php
$i=0;
while ($i<10) {
echo "Soy el $i de la lista.<br/>";
ob_flush();flush();sleep(1);
$i++;
}
?>
Un saludo, man.