php判斷檔案上傳圖片格式的方法介紹

來源:互聯網
上載者:User
這篇文章主要介紹了php判斷檔案上傳圖片格式的執行個體詳解的相關資料,希望通過本文能協助大家實現這樣方法,非常有參考價值,需要的朋友可以參考下

php判斷檔案上傳圖片格式的執行個體詳解

判斷檔案圖片類型,


 $type  = $_FILES['image']['tmp_name'];//檔案名稱 //$type  = $this->getImagetype( $type );  $filetype = ['jpg', 'jpeg', 'gif', 'bmp', 'png']; if (! in_array($type, $filetype)) {   return "不是圖片類型"; }

如上如果使用者修改檔案尾碼為png jpeg等無法滿足,查了查資料解決方案是採用判斷檔案的二進位流資訊,如果你剛好遇到這種問題不妨嘗試一下:


 //*判斷圖片上傳格式是否為圖片 return返迴文件尾碼 public function getImagetype($filename) {  $file = fopen($filename, 'rb');  $bin = fread($file, 2); //唯讀2位元組  fclose($file);  $strInfo = @unpack('C2chars', $bin);  $typeCode = intval($strInfo['chars1'].$strInfo['chars2']);  // dd($typeCode);  $fileType = '';  switch ($typeCode) {   case 255216:    $fileType = 'jpg';    break;   case 7173:    $fileType = 'gif';    break;   case 6677:    $fileType = 'bmp';    break;   case 13780:    $fileType = 'png';    break;   default:    $fileType = '只能上傳圖片類型格式';  }  // if ($strInfo['chars1']=='-1' AND $strInfo['chars2']=='-40' ) return 'jpg';  // if ($strInfo['chars1']=='-119' AND $strInfo['chars2']=='80' ) return 'png';  return $fileType; }

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.