Fatal error: Maximum execution time of 30 seconds exceeded

dani
01 de Marzo del 2004
Pos eso,que me da el siguiente error:

Fatal error: Maximum execution time of 30 seconds exceeded in /var/www/html/pruebas/daniel/abogados/normas.php on line 131

El codigo es el siguiente:

while($ps){
$j=$i+1;
$aname=substr($cadena,$ps+1,$rpos-1-$ps);
$aname=ereg_replace("»","",$aname);
echo $aname."<br>n";
flush();
$ps=strpos($cadena,">Artículo",$ps+1);
if (!$ps) $ps=strpos($cadena,">Articulo",$ps+1);
if (!$ps) $ps=strpos($cadena,">artículo",$ps+1);
if (!$ps) $ps=strpos($cadena,">articulo",$ps+1);
$rpos=strpos($cadena,"</",$ps);
$enlace=eregi_replace(" ","",$aname); if (!strpos($texto,"<a href=".$enlace.">".$aname."</a>"))$texto=eregi_replace($aname,"<a href=".$enlace.">".$aname."</a>",$texto);
$i++;
$anames[]=array($aname,$enlace);
}

el fallo lo dá en el $texto=erei_replace()
Puede ser que se haga un lio en el bucle?es q ni idea...
muchas gracias de antemano

Oscar
01 de Marzo del 2004
El problema viene dado porque el tiempo de ejecución máximo de un script en PHP es de 30 segundos por defecto. Por lo que todo script que supere dicho intervalo, es automaticamente interrumpido.

Existen varias formas de solucionarlo, pero cuando, por ejemplo yo hago una inserción multiples de registros o cualquier otro proceso largo uso la funcion set_time_limit(nº de segundos);

Saludos, Oscar.

khriztian
01 de Marzo del 2004
Esa opción de máximo tiempo de ejecución, la puedes modificar en el php.ini