Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Bonjour,
J'ai une méthode qui envoie une newsletter, cela prend forcément du temps. Le problème c'est que l'appel de cette page dans mon navigateur est interrompue au bout d'un certain temps malgré un set_time_limit(0);
J'ai bien regardé dans le php_info(), le max_execution_time est à 0, d'où le problème peut-il venir ?
Vaut-il mieux appeler cette url via la fonction exec() afin de la laisser se dérouler en arrière plan sur le serveur plutôt que dans mon navigateur ?
Hors ligne
Salut,
il faut différencier le max_execution_time de PHP et celui d'Apache. Lorsque tu passes par ton navigateur, c'est celui d'Apache qui prédomine. Je ne pense pas que le fait de passer par exec() outrepassera se comportement.
Il faut mieux lancer ce genre de script en ligne de commande.
Hors ligne
Si j'ai bien compris la question (j'ai un doute sur l'ordre des mots ), tu veux lancer une commande depuis un script PHP.
Donc oui, c'est exec. Je crois qu'il y a des trucs un peu foireux sous windows avec exec. Par contre, je l'utilise bcp sous linux, ça marche sans problème.
Si ton traitement est long tu peux vouloir le lancer en tâche de fond. Avec linux il faut faire
exec ("monScript.sh > /dev/null &");
A+, Philippe
Hors ligne