set_time_limit() does ejecutar globalmente, pero se puede restablecer localmente.
Establezca el número de segundos que puede ejecutar un script. Si se alcanza esto, , la secuencia de comandos devuelve un error fatal. El límite predeterminado es 30 segundos o, si existe , el valor de max_execution_time definido en php.ini.
Cuando llama, set_time_limit(
) reinicia el contador de tiempo de espera de cero. En otras palabras, si el tiempo de espera es el valor predeterminado de 30 segundos, y 25 segundos en la ejecución del script una llamada tales como set_time_limit (20) se hace, la secuencia de comandos tendrá una duración de un total de 45 segundos antes de tiempo de espera.
yo no lo he probado, pero puede ser capaz de establecer de forma local, restablecer cuando salga de la
<?php
set_time_limit(0); // global setting
function doStuff()
{
set_time_limit(10); // limit this function
// stuff
set_time_limit(10); // give ourselves another 10 seconds if we want
// stuff
set_time_limit(0); // the rest of the file can run forever
}
// ....
sleep(900);
// ....
doStuff(); // only has 10 secs to run
// ....
sleep(900);
// ....
set_time_limit
() ... Cualquier tiempo dedicado a la actividad que tiene lugar fuera de la ejecución de la secuencia de comandos, como las llamadas al sistema que utilizan el sistema(), las operaciones de flujo, las consultas de la base de datos, etc. no se incluye al determinar el tiempo máximo que la secuencia de comandos se ha estado ejecutando. Esto no es cierto en Windows donde el tiempo medido es real.
¿Qué desea que suceda si el temporizador expira mientras la función 1 todavía está en ejecución? – tialaramex