php基于getimagesize 上传图片验证

函数:array getimagesize(string filename, array [imageinfo]);

返回值 : 数组
函数种类 : 图形处理
内容说明:

PHP函数getimagesize可用来取得 gif、jpeg 及 png 三种 www 上图片的高与宽,不需要安装 gd library 就可以使用本函数。返回的数组有四个元素。

返回数组的第一个元素 (索引值 0) 是图片的高度,单位是像素 (pixel)。
第二个元素 (索引值 1) 是图片的宽度。

第三个元素 (索引值 2) 是图片的文件格式,其值 1 为 gif 格式、 2 为 jpeg/jpg 格式、3 为 png 格式。

第四个元素 (索引值 3) 为图片的高与宽字符串,height=xxx width=yyy。
可省略的参数 imageinfo 用来取得一些图片的相关信息,例如 iptc (http://www.xe.net/iptc) 的 app13 标记,就可以加在图片中,可利用 iptcparse() 来解析。

下面的例子是smarty中用于图片上传后的图片类型验证和长宽判断:

function load($filename) {
        $image_info = @getimagesize($filename);
        $this->image_type = $image_info[2];
        if( $this->image_type == IMAGETYPE_JPEG ) {
            $this->image = @imagecreatefromjpeg($filename);
        } elseif( $this->image_type == IMAGETYPE_GIF ) {
            $this->image = @imagecreatefromgif($filename);
        } elseif( $this->image_type == IMAGETYPE_PNG ) {
            $this->image = @imagecreatefrompng($filename);
        }else{
            return false;
        }
        if(function_exists("imagecopyresampled") && function_exists("imagecreatetruecolor") && $this->image_type != IMAGETYPE_GIF){
            $this->true_color = true;
        }
        if($this->image){
            return true;
        }
        return false;
    }


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值