2010-02-02 6 views
2

Question rapide.Ligne de commande PHP: max_execution_time et memory_limit

Si j'exécute un script php à partir de la ligne de commande (via un travail cron, "php ./somwthing-sync.php"), suis-je toujours lié à php max_execution_time et memory_limit?

Merci

Nathan

+0

ceci: http://stackoverflow.com/questions/5874950/set-max -execution-time-in-php-cli – diyism

Répondre

10

si vous regardez le doc, son dit

 max_execution_time integer 

This sets the maximum time in seconds a script is allowed to run before it is 
terminated by the parser. This helps prevent poorly written scripts from 
tying up the server. The default setting is 30. 
When running PHP from the command line the default setting is 0. 

A 0 signifie illimité. (Si je ne me trompe pas). Quant à memory_limit, la ligne de commande PHP prendra la valeur définie dans php.ini. Vous pouvez facilement tester et savoir en écrivant du code qui « mange » la mémoire et memory_limit mise à -1 dans Look php.ini

+2

Non, vous n'avez pas tort, la limite de temps est théoriquement infinie à partir de la ligne de commande. En fait, la documentation PHP l'énonce explicitement: http://us.php.net/manual/fr/features.commandline.differences.php –

2

Je devine que vous êtes toujours, comme la page est toujours exécutée et prend de la mémoire.

Selon ghostdog, la limite de temps est enlevé, mais je pense la limite de mémoire est en place jusqu'à ce que.

+0

D'après mes observations, il n'y a pas de limite de mémoire lors de l'exécution de PHP à partir de la ligne de commande. –