Voici un projet qui permet à PHP d'obtenir et d'interagir dynamiquement avec un vrai terminal cmd. Obtenez ici: https://github.com/merlinthemagic/MTS
Après avoir téléchargé vous suffit d'utiliser le code suivant:
//if you prefer Powershell, replace 'cmd' with 'powershell'
$shellObj = \MTS\Factories::getDevices()->getLocalHost()->getShell('cmd');
$strCmd1 = 'run_app.exe -param "test" -name "tester"';
$return1 = $shellObj->exeCmd($strCmd1);
Le retour vous donnera le retour de commande ou erreur de cmd, comme si vous étiez assis à la console. De plus, vous pouvez lancer n'importe quelle commande contre le $ shellObj, l'environnement est maintenu tout au long de la vie du script PHP. Ainsi, au lieu de regrouper les commandes dans un fichier de script, il suffit de les exécuter une par une à l'aide de la méthode exeCmd(), de cette façon vous pouvez également gérer le retour et toutes les exceptions.