Estoy tratando de obtener cierta salida para el comando svn en formato XML. La salida está bien cuando escribo parámetros válidos. Sin embargo, cuando escribo una contraseña incorrecta, la salida no muestra un mensaje de error. Este es el código PHP:PHP exec() no está devolviendo el mensaje de error en la salida
exec('/usr/bin/svn --username something --password something --non-interactive log -r HEAD --xml --verbose http://a51.unfuddle.com/svn/a51_activecollab/', $output);
Aquí se emite recibo en el terminal:
<?xml version="1.0"?>
<log>
svn: OPTIONS of 'http://a51.unfuddle.com/svn/a51_activecollab': authorization failed: Could not authenticate to server: rejected Basic challenge (http://a51.unfuddle.com)
Y aquí está la salida que recibo de la variable de salida $ con var_dump:
array(2) {
[0]=>
string(21) "<?xml version="1.0"?>"
[1]=>
string(5) "<log>"
}
Como puede ver, la variable $ output no devuelve la tercera línea de salida, donde lo hace el terminal. Ayúdame a obtener el mismo resultado que obtengo en el terminal (incluso lo intenté con los métodos shell_exec() o system() pero devuelven el mismo resultado que exec()) ¿Cómo obtengo el resultado completo? ¡Gracias de antemano!
Esto ha solucionado el problema. Muchas gracias. – Goran
Aparte: ¿no es extraño que el ejecutivo de PHP no proporcione una forma simple de capturar la salida 'stderr' por separado? –