在将其保存到新文件之前,如何从调整大小的文件中获取md5?

时间:2011-05-27 00:13:27

标签: php resize md5

我正在调整jpg的大小,之后我想从它获取md5然后用该MD5名称保存新图像。 代码看起来像这样:

$extension = 'jpg';
$img = imagecreatefromjpeg($source);

$tmp_img = imagecreatetruecolor($newWidth, $newHeight);
imagecopyresampled($tmp_img, $img, 0, 0, 0, 0, $newWidth, $newHeight, $plik[0], $plik[1]);

//$md5 - here i need to get md5...

imagejpeg($tmp_img, $md5.;'.'.$extension);
imagedestroy($img);

是否可以先保存tmp文件?

1 个答案:

答案 0 :(得分:3)

你能做到最好......

$md5 = md5_file($source);

我还看过一种技术,您可以将图像文件流式传输到输出缓冲区并捕获它。

ob_start();
imagejpeg($tmp_img);
$data = ob_get_clean();

$md5 = md5($data);

然后,您可以使用...

创建文件
file_put_contents($md5 . '.' . $extension, $data);