SET_TIME_LIMIT |
Fixe le temps limite |
---|---|
PHP 4+ |
Syntaxe
function set_time_limit($seconds) |
Paramètres
Nom | Description |
---|---|
$seconds | Ce paramètre permet d'indiquer le nombre de seconde |
Description
Cette instruction permet de fixer le temps d'exécutions maximum d'un script en secondes. Ainsi, grâce à cette limite, si le code PHP contient une boucle infini ou une exécution trop longue, le script PHP sera automatique arrêter au bout d'un certain temps.
Remarques
- Cette fonction fixe la valeur de la directive de compilation «max_execution_time».
- Lorsque PHP est exécuté en «safe mode», cette fonction n'a aucun effet, vous devrez dans ce cas changer directement la valeur dans le fichier «php.ini».
- ATTENTION ! La fonction «system» et «usleep» n'est pas incluse dans le calcul du temps fixé par la fonction «set_time_limit», car seul le temps passé à l'intérieur de l'exécution du script est calculé.
- Si vous utilisez PHP en ligne de commande (PHP CLI), par défaut, il n'y a pas de limite de définit, vous devez donc utiliser cette fonction pour imposé une limite.
- Lorsque la limite de temps est atteinte par le script PHP, un message d'erreur «PHP Fatal error: Maximum execution time of XXX seconds exceeded in» est renvoyé par le PHP.
Exemples
L'exemple suivant permet de fixer à 100 secondes le temps maximum d'exécution du script PHP :
- <?php
- set_time_limit( 100 );
- // ... Le code source du programme PHP ...
- ?>
L'exemple suivant, nommé «timeout.php», provoque une boucle infini allant durée 600 secondes et s'arrêter après :
- <?php
- set_time_limit( 600 );
- // Boucle infini :
- for( ;;) { }
- ?>
on obtiendra le résultat suivant :
Fatal error: Maximum execution time of 600 seconds exceeded in timeout.php on line 4
Dernière mise à jour : Lundi, le 21 mars 2016