<?php /** * 检测文件的真实类型 * @param string $srcPath 文件路径 * @return string $realType 文件真实类型 */ $imgurl = 'https://ae01.alicdn.com/kf/HTB1w5xdS4TpK1RjSZR0762EwXXa7.png'; echo file_type_detect($imgurl); function file_type_detect($srcPath){ $types = array( 6677 => 'bmp', 7173 => 'gif', 7368 => 'mp3', 13780 => 'png', 255216 => 'jpg', ); $binary = curl_get($srcPath); $bytes = substr($binary, 0, 2); $head = @unpack('C2char', $bytes); $typeCode = intval($head['char1'].$head['char2']); $realType = isset($types[$typeCode]) ? $types[$typeCode] : $typeCode; return $realType; } function curl_get($url){ $ch=curl_init($url); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Linux; U; Android 4.4.1; zh-cn; R815T Build/JOP40D) AppleWebKit/533.1 (KHTML, like Gecko)Version/4.0 MQQBrowser/4.5 Mobile Safari/533.1'); curl_setopt($ch, CURLOPT_TIMEOUT, 10); $content=curl_exec($ch); curl_close($ch); return($content); }
转载请注明出处 AE博客|墨渊 » php 判断图片文件的真实类型
发表评论