首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >php使用curl从url保存图像,但首先验证它

php使用curl从url保存图像,但首先验证它
EN

Stack Overflow用户
提问于 2012-06-09 13:27:59
回答 2查看 1.3K关注 0票数 0

我找到了下面的函数进行搜索

代码语言:javascript
复制
function grab_image($url,$saveto){
    $ch = curl_init ($url);
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_BINARYTRANSFER,1);
    $raw=curl_exec($ch);
    curl_close ($ch);
    if(file_exists($saveto)){
        unlink($saveto);
    }
    $fp = fopen($saveto,'x');
    fwrite($fp, $raw);
    fclose($fp);
}

这应该可以保存图像,但我如何才能检查图像的dimensionssizefiletype首先,以验证其有效性?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-06-09 13:58:15

在启动curl之前,您可以使用以下命令直接读取图像

代码语言:javascript
复制
$url = 'http://exmaple.com/img/some.png';
$imgInfo = getimagesize($url);
print_r($imgInfo);
票数 0
EN

Stack Overflow用户

发布于 2012-06-09 13:39:49

像这样的东西?

代码语言:javascript
复制
$raw = curl_exec($ch);
if ($raw === FALSE) {
   die("Fetch failed");
}

// get size
$size = strlen($raw);

// get dimensions
$img = imagecreatefromstring($raw);
$x = imagesx($img);
$y = imagesy($img);

// get mime type
$finfo = new finfo(FILEINFO_MIME);
$type = $finfo->buffer($raw); // e.g. image/jpeg
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10958620

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档