//获得图片的格式,包括jpg,png,gif
function get_type($img_name)//获取图像文件类型
{
if (preg_match("/.(jpg|jpeg|gif|png|bmp)$/i", $img_name, $matches)){
$type = strtolower($matches[1]);
}else{
$type = "string";
}
return $type;
}
//判断上传文件类型
$allowedextensions = array("txt","csv","htm","html","xml",
"css教程","doc","xls","rtf","ppt","pdf","swf","flv","avi",
"wmv","mov","jpg","jpeg","gif","png");
foreach ($_files as $file) {
if ($file['tmp_name'] > '') {
if (!in_array(end(explode(".",
strtolower($file['name']))),
$allowedextensions)) {
die($file['name'].' is an invalid file type!<br/>'.
'<a href="网页特效:history.go(-1);">'.
'<< go back</a>');
}
}
}
//另类的读取文件与图片类型
function checktitle($filename) {
$file = fopen($filename, "rb");
$bin = fread($file, 2); //只读2字节
fclose($file);
$strinfo = @unpack("c2chars", $bin);
$typecode = intval($strinfo['chars1'].$strinfo['chars2']);
$filetype = "";
switch ($typecode)
{
case 7790:
$filetype = 'exe';
break;
case 7784:
$filetype = 'midi';
break;
case 8297:
$filetype = 'rar';
break;
case 255216:
$filetype = 'jpg';
break;
case 7173:
$filetype = 'gif';
break;
case 6677:
$filetype = 'bmp';
break;
case 13780:
$filetype = 'png';
break;
default:
$filetype = 'unknown'.$typecode;
}
//fix
if ($strinfo['chars1']=='-1' && $strinfo['chars2']=='-40' ) {
return 'jpg';
}
if ($strinfo['chars1']=='-119' && $strinfo['chars2']=='80' ) {
return 'png';
}
return $filetype;
}
|