php图像处理

    xiaoxiao2021-03-25  97

    php中根据已有图片创建图像时,函数imagecreatefromjpeg()和imagecreatefromgif()都能正常工作,而imagecreatefrompng()显示不出图片。

    用getimagesize获取图像信息,获取的数据如下: Array ( [0] => 1136 [1] => 757 [2] => 2 [3] => width="1136" height="757" [bits] => 8 [channels] => 3 [mime] => image/jpeg ) 明显可以看出这个图片的类型是jpeg的,而我在程序里判断的代码如下: $ext = explode(".",$picname);  $ext=end($ext); //判断图片类型 www.bcty365.com switch($ext){      case "png":                    $image=imagecreatefrompng($picname);          break;      case "jpeg":                    $image=imagecreatefromjpeg($picname);          break;      case "jpg":                    $image=imagecreatefromjpeg($picname);          break;      case "gif":                    $image=imagecreatefromgif($picname);          break;  使用$ext = explode(".",$picname);$ext=end($ext)根据图片后缀名判断图片类型明显有弊端 那该如何优化呢?代码如下   $ename=getimagesize($picname);    $ename=explode('/',$ename['mime']);    $ext=$ename[1];    switch($ext){     case "png":           $image=imagecreatefrompng($picname);      break;     case "jpeg":           $image=imagecreatefromjpeg($picname);      break;     case "jpg":           $image=imagecreatefromjpeg($picname);      break;     case "gif":           $image=imagecreatefromgif($picname);      break;    }  这样获取准确的图片类型,然后进行处理。

    转载请注明原文地址: https://ju.6miu.com/read-18478.html

    最新回复(0)