2013-07-23 3 views
0

Je possède ce code exemple appelé main.php:comment sauter de rester pour la sortie de shell exécuter après l'exécution dans un script PHP?

<?php 
shell_exec('C:\wamp\bin\php\php5.4.3\php.exe a.php'); 
shell_exec('C:\wamp\bin\php\php5.4.3\php.exe b.php'); 
?> 

quand exécuter ce script après l'exécution de la première shell_exec il rester jusqu'à la finition d'abord shell_exec puis exécutez seconde.

mais je veux que ce script ne reste pas pour finir premier shell_exec et sa sortie et exécute la seconde.

maintenant comment puis-je faire cela?

J'ai plusieurs scripts et je dois les exécuter simultanément par un script principal et de les contrôler par elle. mais je ne sais pas comment exécuter mes scripts Simultanément de l'intérieur de ce script principal?

update1: Je ne peux pas exécuter a.php et b.php par cron car leur temps de finition est inconnu. peut-être a.php terminé après 1 heure ou 10 minutes et b.php aussi comme a.php.

Update2: Je une solution fondée cette page:

Is there a way to use shell_exec without waiting for the command to complete?

+0

quel est le cas d'utilisation? Les solutions possibles incluent ajax ou par exemple des tâches planifiées si c'est juste quelque chose qui doit fonctionner périodiquement. – jeroen

+0

Je ne cours pas ces manuscrits par le navigateur. ces scripts doivent fonctionner en arrière-plan –

+0

Si vous cherchez un script shell, vérifiez cette question: http://stackoverflow.com/questions/672719/parallel-execution-of-shell-processes – jeroen

Répondre

1

Si je comprends que vous souhaitez exécuter un processus d'arrière-plan sur un essai de Windows box.Suggest ce ...

<?php 
    shell_exec('start /b C:\wamp\bin\php\php5.4.3\php.exe a.php'); 
    shell_exec('start /b C:\wamp\bin\php\php5.4.3\php.exe b.php'); 
?> 
Questions connexes