我想用mogrify
(GraphicsMagicks)壓縮JPG,我需要將結果存儲在一個變量中。將shell輸出保存到變量
$compressed_jpg_content = shell_exec("gm mogrify -quality 85 - < ".escapeshellarg($image_path)." $filename.jpg");
if (!$compressed_jpg_content) {
throw new Exception("Conversion to compressed JPG failed");
}
但是它不工作,我也得到Conversion to compressed JPG failed
,我認爲這是我的命令
編輯
由於艾倫·巴特勒
在這種情況下$image_path
問題實際上是POST變量,$filename
是I4tWX0HI.jpg
錯誤:gm mogrify: Unable to open file (I4tWX0HI.jpg)
的錯誤是因爲I4tWX0HI.jpg
很明顯不存在yet.That雖這麼說,我怎麼能修改命令讓它把內容在變,而不是試圖打開一個文件
Regards
你可以試着在後面加上'2>&1'到命令結束標準錯誤轉換到標準輸出和回聲出'compressed_jpg_content'看到d的錯誤ebugging。嘗試'$ compressed_jpg_content = shell_exec(「gm mogrify -quality 85 - <.escapeshellarg($ image_path)。」$ filename.jpg 2> &1"); echo $ compressed_jpg_content;' –
@AllenButler檢查編輯 – user2650277