imagecreatefromjpeg php 没有输出

imagecreatefromjpeg php not outputing

我正在尝试通过 imagecreatefromjpeg 重新生成图像,重命名它并将其存储在服务器上的另一个位置,但没有任何输出。这是我拥有的:

$src = 'http://example.com/assets/stock/myimagetoregenerate.jpg';

$dest = imagecreatefromjpeg($src);

imagejpeg($dest,'stock/test.jpg', 100);

进入该目录时,没有生成图像。

我也尝试输出图像而不是保存图像,方法是将其添加到上面的代码中:

header('Content-Type: image/jpg');

但是 img src 只是当前页面 url。

所有权限都设置为读写,所以这不是问题。

服务器上启用了 GD 2.1.0。

在不知道源图像的详细信息的情况下,您可能会收到诸如 403、404 之类的错误或来自远程文件的任何错误。

如果它是您自己服务器上的文件,请使用本地路径访问它。否则你会让服务器必须连接到它自己并检索它已经拥有的东西,这与 jQuery 中的人做 $("#"+$(this).attr("id")) 一样愚蠢(拜托, 不要这样做 XD)

如果它确实是一个远程文件,你还是太复杂了。只需使用:

copy("http://example.com/some/remote/file.jpg","localcopy.jpg");

这会快得多,您将获得文件的精确副本,而不是重新压缩的版本(对于 JPEG,每次压缩的质量都会降低)。