PHP-GD如何用facebook的url检查类型(jpeg,gif ..)?

时间:2014-07-01 07:51:52

标签: php facebook gd php-gd

如果用户没有照片,则facebook而不是jpeg获取gif。 我怎么检查类型?

我尝试了以下内容:

$PIC_Friend = imagecreatefromstring(file_get_contents('http://graph.facebook.com/'. id .'/picture?width=50&height=50')); 
if(imagejpeg($PIC_Friend)) { 
..
} elseif (imagegif($PIC_Friend)) { 
...

这可以工作但是替换了我的所有模板(php的其余元素),只显示了被控图像方法imagegif等的照片。

4 个答案:

答案 0 :(得分:1)

确定。

解决方案很简单..只需使用php方法 exif_imagetype

http://php.net/manual/en/function.exif-imagetype.php

答案 1 :(得分:0)

$img_info = getimagesize($file_path);
if($img_info['mime'] == 'image/pjpeg' || $img_info['mime'] == 'image/jpeg') {
    echo 'It is a .jpeg';
}

答案 2 :(得分:0)

您可以使用exif_imagetype

$type = exif_imagetype('path/to/yourImage');

$type可以是IMAGETYPE_GIF,IMAGETYPE_JPEG,IMAGETYPE_PNG,...。 此方法比getimagesize快得多。如果您的文件不是图像,它将输出false

答案 3 :(得分:0)

您可以使用get_headers

阅读标题
$headers = get_headers('http://graph.facebook.com/'. id .'/picture?width=50&height=50');

<强>输出

array(22) 
{
  [0]=> string(23) "HTTP/1.1 302 forced.302"
  ...
  [14]=> string(24) "Content-Type: image/jpeg"
  ...
  string(17) "Connection: close"
}