使用php从本地临时文件读取图像

使用php从本地临时文件读取图像,php,image,Php,Image,场景:之前我直接读取图像的url,并将图像大小调整为4个不同的大小。但我有执行时间。现在我读取url并将其复制到一个临时文件夹中,然后将本地临时文件夹中的图像传递给imagecreatefromjpeg() 错误:图像正确保存在临时文件夹中。但是在目标文件夹中创建了各种大小的图像,但图像看起来只有黑色。(未获得实际图像)。我想从本地读取文件可能有问题。 有什么想法吗 提前谢谢 如果您试图读取的文件不是JPG文件,它将只返回黑色图像, 因此,在阅读图像时,请检查文件的文件类型,然后在这三种文件类型

场景:之前我直接读取图像的url,并将图像大小调整为4个不同的大小。但我有执行时间。现在我读取url并将其复制到一个临时文件夹中,然后将本地临时文件夹中的图像传递给imagecreatefromjpeg()

错误:图像正确保存在临时文件夹中。但是在目标文件夹中创建了各种大小的图像,但图像看起来只有黑色。(未获得实际图像)。我想从本地读取文件可能有问题。 有什么想法吗


提前谢谢

如果您试图读取的文件不是
JPG
文件,它将只返回黑色图像,
因此,在阅读图像时,请检查文件的文件类型,然后在这三种文件类型之间调用正确的函数(
jpeg
png
gif
)。

您是否在任何地方设置了
$width
$height

$width = imagesx($image);
$height= imagesy($image);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height);

您正在读取仅为JPG文件的图像吗?
$details=$db->getImageDetails()如何知道要检查哪个图像的大小?另外,接下来,
var\u dump($array)
显示了什么?getImageDetails是我从db编写的一个函数。有4种大小的图像需要调整大小。所以这个尺寸。是的,我只阅读JPG文件。我在传递imagecreatefromjpeg($url)时没有收到此错误,因为它是全局访问。是的,但我假设大小是相对的?那么函数如何知道起始大小呢?或者它总是
100x100
300x300
等等?我从url复制到临时文件的图像是JPG。因此临时文件只有JPG图像。有更好的建议吗?检查一下,非常感谢。我没有设置原始宽度和高度。很抱歉
$width = imagesx($image);
$height= imagesy($image);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height);