php图像旋转无法按预期工作

时间:2015-07-20 22:35:48

标签: php rotation

我使用php在服务器上旋转照片。当我点击“旋转”按钮时,我使用ajax加载php页面,执行旋转并使用新图像刷新div。

一切正常,图像以正确的尺寸旋转,但图像本身没有旋转。如果我按f5刷新页面,则会更正显示图像。有谁知道为什么在刷新之前图像没有正确显示。

$photo_path= $result['photo_path'];
$src = imagecreatefromjpeg($photo_path);
$rotate = imagerotate($src, 90, 0);
@unlink($photo_path);
imagejpeg($rotate,$photo_path);
imagedestroy($src);
imagedestroy($rotate);

有什么想法吗?

4 个答案:

答案 0 :(得分:0)

试试这个,

$file="myimage.jpg";

$file1 = imagecreatefromjpeg($file);

$file2 = imagerotate($file1, $degrees, 0);

file_put_contents("newimage.jpg",$file2);

答案 1 :(得分:0)

也许使用JavaScript,因为这是客户端问题。

更新:这是非常基本的,但要测试一下,看看它是否有效;

 <script>
  function changeImage(o){
   o.src = '//' + (new Date()).getTime(); // time to help stop caching
    }
 </script>
 <img src="//" onclick="changeImage(this)" />

答案 2 :(得分:0)

我设法解决了这个问题。谢谢你的帮助。

我所做的只是给照片一个新的文件名并更新mysql表。必须与缓存的图像有关,我保持新的旋转文件具有相同的文件名。

再次感谢。

答案 3 :(得分:0)

您可以在文件扩展名后添加问号和随机数,这会使用户浏览器忽略本地缓存,然后重新加载该文件。例如:

myimage.png?789 <- Random number