Delirios de un Informático

PHP, CLI, STDOUT & STDERR

Suelo utilizar PHP como lenguaje para programar ciertos scripts que me faciliten muchas tareas, porque es el lenguaje que más conozco y por lo tanto el más rápido para desarrollarlos. Estos scripts pueden ejecutarse en línea de comandos como cualquier archivo Bash o Python y muchas veces requieren el uso de comandos del sistema que pueden llamarse a través de las funciones exec() o shell_exec(). El problema es que a veces estos comandos muestran una serie de datos que interesa capturar para procesarlos desde PHP y que no logran capturarse mediante estas funciones. Por eso, he rebuscado y encontrado el modo de solucionarlo:

$cmd = "/usr/bin/comando --parametros";
exec("$cmd 2>&1", $out, $err);

De este modo toda la salida de datos se pasa a PHP sin mostrarlo por pantalla :).

Un comentario en “PHP, CLI, STDOUT & STDERR”

Milor dice:

Y para la entrada?

Imagina que es un programa interactivo que quieres controlar por php, por ejemplo…