所以我一直在使用这种方法来调整通过PHP中的表单上传的图像:
list ($width, $height, $type, $w)=getimagesize($_FILES[$imageName]['tmp_name']);
$info = getimagesize($_FILES[$imageName]['tmp_name']);
这很有效 - 允许调整大小和转换为png。
现在我需要做同样的事情 - 但对于下载的图像,例如给出在线图像的网址,例如http://colorvisiontesting.com/images/plate%20with%205.jpg
。
从它的外观来看,这可以用CURL
完成,但是我无法弄清楚如何从中创建一个图像对象。这就是我到目前为止所做的:
$c = curl_init();
curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($c, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($c, CURLOPT_URL, $imageURL);
$curlImage = curl_exec($c);
$err = curl_getinfo($c,CURLINFO_HTTP_CODE);
curl_close($c);
list ($width, $height, $type, $w)=getimagesize($curlImage);
$info = getimagesize($curlImage);
但这在getimagesize
失败了 - 我无法弄清楚这里的正确方法是什么。有什么想法吗?
答案 0 :(得分:1)
getimagesize
函数适用于文件名(本地或远程),但不适用于表示图像内容的字符串。
你可以:
file_put_contents
)getimagesize
功能(它应该可以使用)。getimagesizefromstring
(与getimagesize
的工作方式相同,但适用于数据,而不是文件名)imagecreatefromstring
(如果要将流/数据转换为图片(gd)资源,则需要使用{},然后使用资源上的imagesx
和imagesy
。< / LI>
醇>