1
我試圖從bash命令獲取輸出。 如果我在bash中直接執行some命令,我會看到結果。但不能與PHP exec()函數..PHP exec()不從bash命令抓取輸出
$command = "ffmpeg -i '$video_path' 2>&1 | grep Video | perl -wle 'while(<>){ $_ =~ /.*?(\d+x\d+).*/; print $1; }'";
$res = exec($command/*, $output*/);
print_r($res);
// print_r($output);
此命令嘗試使用ffmpeg lib獲得視頻分辨率。視頻路徑很好,我三重檢查。
謝謝!
編輯:從輸出截圖在bash
Per [the docs](http://php.net/manual/en/function.exec.php),「命令結果的最後一行。如果你需要執行一個命令並且擁有所有的來自命令的數據直接返回,沒有任何干擾,使用'passthru()'函數。「 – ceejayoz
將命令的完整輸出轉換爲字符串的最簡單方法是使用反引號(') – iainn
看起來您已經嘗試將輸出參數用於exec,它將包含所有輸出,而不是最後一行。以這種方式運行時,$輸出中有什麼? –