<?php //创立文件夹 function mk_dir($dir, $mode = 0700){ //假如上传路径没有"/",加上"/" if (!preg_match("/(.+)\/$/",$dir)) { $dir .= "/"; } //循环建立文件夹 if (!file_exists($dir)){ $dirArray=explode("/",$dir); foreach($dirArray as $v){ $newpath .= $v."/"; mk_dir(dirname($newpath)); @mkdir($dir, 0777); } } } //检测文件类型 function checkmime($filename) { //JPG,GIF,BMP,PNG $File = fopen($filename, "rb"); $bin = fread($File, 2); //只读2字节 fclose($File); $strInfo = @unpack("C2chars", $bin); $typeCode = intval($strInfo['chars1'].$strInfo['chars2']); $FileType = array("255216","7173","6677","13780"); if(in_array($typeCode,$FileType)) { return TRUE; } } //上传文件 function upload($file,$dir){ //创立文件夹 mk_dir($dir,0755); // 判断文件按大小 if($_FILES["$file"][size]>500000) { echo "<script>"; echo "alert('上传文件超过规定大小范围!');"; echo "location.href='javascript:history.go(-1)';"; echo "</script>"; } //判断文件格式。 $fileType = array("image/jpeg","image/bmp","image/gif","image/pjpeg"); if(!in_array($_FILES["$file"][type],$fileType)) { echo "<script>"; echo "alert('不支持此类文件上传!');"; echo "location.href='javascript:history.go(-1)';"; echo "</script>"; } //上传文件,返回上传文件的路径和名称 if ($_FILES["$file"][error]) { echo "<script>"; echo "alert('上传文件失败!');"; echo "location.href='javascript:history.go(-1)';"; echo "</script>"; } else { //假如文件上传成功 if (move_uploaded_file($_FILES["$file"][tmp_name],$dir.$_FILES["$file"][name])) { //判断文件格式。 if(!checkmime($dir.$_FILES["$file"][name])){ @unlink ($dir.$_FILES["$file"][name]); echo "<script>"; echo "alert('此文件类型可疑,已删除!');"; echo "location.href='javascript:history.go(-1)';"; echo "</script>"; } else { return $dir.$_FILES["$file"][name]; } } } } ------------------------------------------------------------------------------------------------------------------------------------------------- //创立文件夹 function mk_dir($dir, $mode = 0700){ //假如上传路径没有"/",加上"/" if (!preg_match("/(.+)\/$/",$dir)) { $dir .= "/"; } //循环建立文件夹 if (!file_exists($dir)){ $dirArray=explode("/",$dir); foreach($dirArray as $v){ $newpath .= $v."/"; mk_dir(dirname($newpath)); @mkdir($dir, 0777); } } } //检测文件类型 function checkmime($filename) { //JPG,GIF,BMP,PNG $File = fopen($filename, "rb"); $bin = fread($File, 2); //只读2字节 fclose($File); $strInfo = @unpack("C2chars", $bin); $typeCode = intval($strInfo['chars1'].$strInfo['chars2']); $FileType = array("255216","7173","6677","13780"); if(in_array($typeCode,$FileType)) { return TRUE; } } ?>