我正在使用以下代码从URL保存图像,但是有时图像URL不好,那里没有图像,或者图像存在问题,并且保存了一个零尺寸的文件。
<?php
file_put_contents ("/var/www/html/images/" . $character . ".jpg",
file_get_contents($image));
我需要尝试找到一种方法来阻止这种情况的发生,因为这会造成问题(保存零大小的文件)。
我已经尝试过了,但是似乎仍在发生:
$filesize = file_put_contents ("/var/www/html/images/" . $character . ".jpg",
file_get_contents($image));
if (($filesize < 10) || ($filesize == "")) {
echo "Error";
}
有人可以推荐一种更可靠的方法吗?
谢谢。
Imagick程序包中有执行此操作的方法
[Imagick::getImageGeometry()-返回图像的宽度和高度,或引发异常。
function isValidImage($filename)
{
if (!fileexists($filename) return false;
if (filesize($filename) == 0) return false;
$image = new imagick($filename);
$img=$image->getImageGeometry();
return ($img['width'] > 0 && $img['height'] > 0);
}
编辑:我用更多的支票更新了答案