I have following program to calculate image height and width in fast manner as compare getImageSize(); PHP function. The reason? Remote image will need to be downloaded into your server and then it will be read locally by 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;
?>
But after executing this php code i am getting following error
Fatal error: Cannot redeclare getimagesize() in C:\wamp\www\test\CheckWH.php on line 25
There is already a standard-method called getImageSize in PHP. Rename your method and everything’s fine.
http://php.net/manual/en/function.getimagesize.php