PHPファイルアップロードパッケージ

2945 ワード

ファイルアップロードパッケージ
include 'uploadone.php'; header("Content-type: text/html; charset=utf-8");//パッケージ取得ファイル名接尾辞function getExt($fileName){return strtolower(pathinfo($fileName,PATHINFO_EXTENSION);}//一意のファイル名function getUniname(){return md 5(uniqid(microtime,true))}//マルチファイルアップロードデータの処理function getFiles(){
$i=0;
foreach ($_FILES as $file){
    if(is_string($file['name'])){
        $files[$i]=$file;
        $i++;
    }elseif (is_array($file['name'])){
        //             
        foreach ($file['name'] as $key=>$val){
            $files[$i]['name']=$file['name'][$key];
            $files[$i]['tmp_name']=$file['tmp_name'][$key];
            $files[$i]['error']=$file['error'][$key];
            $files[$i]['size']=$file['size'][$key];
            $i++;
        }

    }

}
return $files;

} function uploadFile($fileInfo,$path='uploads',$maxSize=1048576,$allowExt=array('jpg','jpeg','png','gif'),$flag=true){if($fileInfo['error']==0){////ファイル名接尾辞$ext=getExt($fileInfo[' name']);////アップロードファイルサイズif($fileInfo[' size']>$maxSize)$res[' msg']=$fileInfo[' name'].'アップロードファイルが大きすぎる';//////アップロードファイルを許可するクラス型if(!in_array($ext,$allowowExt)$res['msg']=$msg']=$flemsg']=$$$$flg''''''''=$$flag($flag($file Info['name'].'ファイルのアップロードタイプが間違っています!!;//画像/$flag=trueであるかどうかを検出します.if($flag){if(@!getimagesize($fileInfo['tmp_name']){//var_dump(getimagesize($fileInfo['tmp_name']);$res['msg']=$fileInfo['name'].'はピクチャタイプ';}//ファイルがHTTP POSTでアップロードされたかどうかを検出する//is_uploaded_file-ファイルがHTTP POSTでアップロードされたif(!is_uploaded_file($fileInfo['tmp_name'])$res['msg']='ファイルがHTTP POSTでアップロードされたものではないかを判断します.if(isset($res)) return $res; $uniName=getUniname(); $path='./uploads'; if(!file_exists($path)){ mkdir($path,0777,true); chomd($path,0777); } $destination=$path.'/'.$uniName.'.'.$ext; if(!move_uploaded_file($fileInfo['tmp_name'],$destination){$res['msg']=$fileInfo['name'].'ファイル移動に失敗しました'}$res['msg']=$fileInfo['name'].'ファイルのアップロードに成功しました';$res['dest']=$destination; return $res; }else{switch($fileInfo['error']){ case 1:$res['msg']='アップロードされたファイルがPHP upload_max_fizesizeの値';break;case 2:$res[' msg']='フォームMAX_FIZE_SIZE制限サイズ';break;case 3:$res[' msg']='ファイル部分アップロード';break;case 4:$res[' msg']='アップロードファイル';break;case 6:$res[' msg']='アップロードファイル';break;case 6:$res[' msg'']='アップロードファイル';break;case 6:$']='一時ディレクトリが見つかりませんでした';break; Case 7:case 8:$res['msg']='システムエラー';break; } return $res; } }