0

我写了这个简短的函数,我从一个电子邮件链接触发,每当有新照片上传到我的服务器时,它都会通知我:

$fotofil = $_GET['fotofil'];

$image = imagecreatefromjpeg("media/$fotofil");
$image = imagerotate($image, 270, 0);
imagejpeg($image, "media/$fotofil");

echo "The photo has been rotated:<br />";
echo "<img src='media/$fotofil' style='max-height:90vh;' />";

该函数将图像顺时针旋转 90 度并以原始文件名保存。出于某种原因,这只适用于一次。如果我再次触发相同的链接,它会从第一次触发时开始保持旋转。为什么?

4

1 回答 1

1

您可以禁用浏览器的缓存或通过向源添加随机数来欺骗缓存。这样,每个请求的 URL 都会更改,浏览器将找不到它。

$rand = time() . rand();
echo "<img src='media/{$fotofil}?r={$rand}' style='max-height:90vh;' />";
于 2020-04-20T08:56:27.493 回答