ユーザがアップロードした画像ファイルが.png画像でない場合は、Imagemagickを使用して画像ファイルを.pngに変換して保存します。サーバ。ただし、HTMLフォームの.tmpファイルしか使用できないため、.tmp(およびそのファイル名)をそのままにしてCONTENTSを変換する必要があります。これは、これまでの私のコードです:.tmpファイルの内容をpngに変換する方法
if (exif_imagetype($tmpName) != IMAGETYPE_PNG) {
$uploadOk = 0; // don't upload later
$im = new Imagick("$tmpName");
$im->setImageFormat("png");
file_put_contents($tmpName, '');
file_put_contents(file_get_contents($im), $tmpName);
if (exif_imagetype($tmpName) != IMAGETYPE_PNG) { //check again
// try again or throw error somehow?
} else {
$uploadOk = 1;
}
} else {
$uploadOk = 1;
}
どのように適切に元の(非PNG)画像のPNGバージョンに私の一時ファイルの内容を変換するために、Imagickを使用していますか?
編集:スクリプトが正常に動作する必要がありますが、問題はまったく異なるものです。この時点ではわかりません。
...それはあなたのために働く場合はポストファイル
を参照してください取得します。ここのコードは機能しているのですか?そうでない場合、それは何をしますか?あなたはそれが何をすると思いますか? – Mike