Possible en double:
How can I know the error in command in an exec function?En utilisant la fonction exec() de PHP (ou les goûts), comment pouvez-vous afficher la sortie d'erreur du terminal?
Je me demande s'il y a un moyen (en PHP) pour produire les informations d'erreur de compilation du terminal vers le navigateur?
Par exemple: Si vous utilisez ce code à exécuter dans le terminal ...
gcc -o try try.c
... et en supposant que les erreurs ont des "try.c". Le terminal de sortie quelque chose comme ceci:
- try.c En fonction 'principale':
- try.c: 27 'x' non déclaré (première utilisation dans cette fonction)
- try.c: 27 (chaque identificateur non déclaré est rapporté qu'une seule fois
- try.c:. 27 pour chaque fonction apparaît dans)
Pendant ce temps, en utilisant ce code PHP ...
<?php exec("gcc -o try try.c"); ?>
Le navigateur ne renvoie aucune sortie comme le fait le terminal. Existe-t-il un moyen possible direct ou indirect que les détails d'erreur que le terminal a montré puissent être transmis à l'affichage sur un navigateur?
Merci beaucoup.
Il existe STDOUT et STDERR. La sortie que vous décrivez est probablement sur STDERR. Attrapez STDERR et renvoyez-le. – hakre
peut-être 'echo exec();'? – tekknolagi
@hakre cela aussi – tekknolagi