Heim  >  Artikel  >  Backend-Entwicklung  >  Einführung in die Methode zur Bestimmung des Bildformats beim Datei-Upload in PHP

Einführung in die Methode zur Bestimmung des Bildformats beim Datei-Upload in PHP

黄舟
黄舟Original
2017-10-09 09:24:092708Durchsuche

Dieser Artikel enthält hauptsächlich relevante Informationen zur detaillierten Erläuterung des Datei-Upload-Bildformats. Ich hoffe, dass dieser Artikel jedem bei der Implementierung dieser Methode helfen kann

Detaillierte Erläuterung des Beispiels für die Beurteilung des Datei-Upload-Bildformats durch PHP

Beurteilen des Dateibildtyps,


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

Wenn der Benutzer wie oben das Dateisuffix in PNG, JPEG usw. ändert, kann er nicht zufrieden sein. Nach der Überprüfung der Informationen besteht die Lösung darin, die Binärstream-Informationen der Datei zur Beurteilung zu verwenden Wenn Sie auf dieses Problem stoßen, können Sie es genauso gut versuchen:


 //*判断图片上传格式是否为图片 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;
 }

Das obige ist der detaillierte Inhalt vonEinführung in die Methode zur Bestimmung des Bildformats beim Datei-Upload in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn