我有以下程序以快速方式计算图像高度和宽度,比较getImageSize(); PHP功能。原因?需要将远程映像下载到您的服务器中,然后通过php在本地读取它。
<?php
function getimagesize($image_url){
$handle = fopen ($image_url, "rb");
$contents = "";
if ($handle) {
do {
$count += 1;
$data = fread($handle, 8192);
if (strlen($data) == 0) {
break;
}
$contents .= $data;
} while(true);
} else { return false; }
fclose ($handle);
$im = ImageCreateFromString($contents);
if (!$im) { return false; }
$gis[0] = ImageSX($im);
$gis[1] = ImageSY($im);
// array member 3 is used below to keep with current getimagesize standards
$gis[3] = "width={$gis[0]} height={$gis[1]}";
ImageDestroy($im);
return $gis;
}
$image_url = "http://xample.com/4.jpg";
$get = getimagesize($image_url);
print $get;
?>
但执行此PHP代码后,我收到以下错误
Fatal error: Cannot redeclare getimagesize() in C:\wamp\www\test\CheckWH.php on line 25
答案 0 :(得分:2)
在PHP中已经存在一个名为getImageSize的标准方法。重命名你的方法,一切都很好。
答案 1 :(得分:0)
你可以使用php的标准方法getimagesize()
list($width, $height) = getimagesize("http://xample.com/4.jpg");
echo "$width x $height (px)";