我有一个函数可以通过CURL获取远程图像,返回远程图像内容的字符串变量。
我不希望将内容写入文件,但希望获得图像的大小。
因为getimagesize()只支持一个文件,是否有类似getimagesize()的函数但是可以支持图像内容的字符串?
澄清:
$image_content = file_get_contents('http://www.example.com/example.jpg');
如何获取$image_content
的图片大小,而不是运行getimagesize('http://www.example.com/example.jpg');
?
提前致谢
答案 0 :(得分:11)
PHP函数imagecreatefromstring,imagesx和imagesy。
像这样;
$image_content = file_get_contents('http://www.example.com/example.jpg');
$image = imagecreatefromstring($image_content);
$width = imagesx($image);
$height = imagesy($image);
答案 1 :(得分:6)
仅供参考,对于那些迟到的游戏,PHP> = 5.4现在包含getimagesizefromstring()
,它与getimagesize()
相同但接受第一个参数的字符串而不是位置。
http://php.net/manual/en/function.getimagesizefromstring.php
答案 2 :(得分:0)
好的,我找到了PHP 5.3及更少的答案
if (!function_exists('getimagesizefromstring')) {
function getimagesizefromstring($data)
{
$uri = 'data://application/octet-stream;base64,' . base64_encode($data);
return getimagesize($uri);
}
}