0 レビュー
1 回答
mysql-動的にサイズ変更された画像PHPのContent-Length
MySQLデータベースにBLOBとして保存されている画像のサイズを動的に変更するPHPページを作成しました。私は一時ファイルを保存せずにその場でこれを行っています。ヘッダーで送信するContent-Lengthを決定する方法はありますか?
imagecopyresampled()で画像を作成し、imagepng()などを使用して画像データを出力します。
$origImage = imagecreatefromstring($image['data']);
$newImage = imagecreatetruecolor($width, $height);
// preserve alpha
imagealphablending($newImage, false);
imagesavealpha($newImage, true);
$resizeSuccess = imagecopyresampled($newImage, $origImage, 0, 0, 0, 0, $width, $height, $image['width'], $image['height']);
header('Content-Type: image/png');
imagepng($newImage, null, $pngCompression, PNG_NO_FILTER);
imagedestroy($newImage);
わからない
0
レビュー
答え :
解決策:
imagepng
呼び出しの代わりに、次のことを試してください:
ob_start(function($ c){
header( "Content-Length:" .strlen($ c));
$cを返します。
});
imagepng($ newImage、null、$ pngCompression、PNG_NO_FILTER);
obj_end_flush();
また、サーバーは Content-Length
を自動的に処理する必要があります。
わからない
同様の質問
私たちのウェブサイトで同様の質問で答えを見つけてください。