アップロードされた jpg を処理するスクリプトがありますが、何らかの理由で、いくつかの jpg が imagecreatefromjpeg の期待に準拠していないようです。パノラマ画像に関連していると思われますが、追跡する時間がありませんでした. 問題なく動作する 99% の jpg を優先して、欠陥のある jpg をスキップする準備ができています。ただし、これらの問題のいずれかを通過してスクリプトを動かすことができないようです。必ず、これらの欠陥のある jpg のいずれかがファイルのプールにアップロードされるたびに、インライン エラー メッセージが表示されます。
エラー番号: 8
エラーの説明: imagecreatefromjpeg(): gd-jpeg、libjpeg: 回復可能なエラー: シーケンシャル JPEG の無効な SOS パラメータ
ここで何が起こっている可能性がありますか?エラーによってこの操作が脱線するのを防ぐために、考えられることはすべて実行しましたが、ここにあります。
$filename = './uploads/'.$uniqIDStr.'.jpg';
move_uploaded_file($tmpfile, $filename);
$imageResource = false;
try{
ini_set('gd.jpeg_ignore_warning', true);
$imageResource = @imagecreatefromjpeg($filename);
if(!$imageResource){
$imageResource=@imagecreatefromstring(file_get_contents($filename));
}
} catch (Exception $e) {
echo 'Rejecting ' . $fileupload['name'] . ' because the file has some confusing properties...' . $e->getMessage();
unlink($filename);
}
if($imageResource!=false){/***....***/}