PHP检测shell_exec()命令是否失败

时间:2011-10-28 00:09:48

标签: php ffmpeg shell-exec

我正在PHP的shell_exec()中运行ffmpeg命令来转换列表中的多个视频。无论如何都要检测视频转换时是否发生错误(或至少验证它是否完全完成了转换)?

如果发生错误,我不想停止转换其他视频,只是能够记录错误。

<?php
    shell_exec('ffmpeg -i downloads/flv/file1.flv -vcodec libvpx -acodec libvorbis downloads/webm/file1.webm');

    if(error) {
     //run a command here to report the error (ie. MySQL or email)
    }
?>

2 个答案:

答案 0 :(得分:10)

使用其他系统调用函数(如exec

)捕获退出代码
exec('ffmpeg ...', $output, $return);

if ($return != 0) {
    // an error occurred
}

任何不错的实用程序都会在出错时以0以外的代码退出。

答案 1 :(得分:-1)

$return=shell_exec('ffmpeg ...');

if ($return) { //look at what it returns do what you will with the data

}