简单的php文件上传(实例)
把下面代码另存为uploads.php 代码如下: function file_list($dir,$pattern=""){ $arr=array(); $dir_handle=opendir($dir); if($dir_handle){ while(($file=readdir($dir_handle))!==false){ if($file==='.' || $file==='..'){ continue; } $tmp=realpath($dir.'/'.$file); if(is_dir($tmp)){ $retArr=file_list($tmp,$pattern); if(!empty($retArr)){ $arr[]=$retArr; } } else { if($pattern==="" || preg_match($pattern,$tmp)){ $arr[]=$tmp; } } } closedir($dir_handle); } return $arr; } $d_root = $_SERVER['DOCUMENT_ROOT']; $store_dir = "$d_root/uploads/";// 上传文件的储存位置 if (!is_dir($store_dir)) { mkdir($store_dir,0777,true); } $file_arr = file_list($store_dir); foreach ($file_arr as $v=>$k) { $d_root_no = strlen($d_root); $l = substr($k,$d_root_no); echo $v.'号文件下载地址为: '; } $upload_file=isset($_FILES['upload_file']['tmp_name'])?$_FILES['upload_file']['tmp_name']:''; $upload_file_name=isset($_FILES['upload_file']['name'])?$_FILES['upload_file']['name']:''; $upload_file_size=isset($_FILES['upload_file']['size'])?$_FILES['upload_file']['size']:''; if($upload_file){ $file_size_max = 1000*1000*200;// 200M限制文件上传最大容量(bytes) if (!is_dir($store_dir)) { mkdir($store_dir,true); } $accept_overwrite = 1;//是否允许覆盖相同文件 // 检查文件大小 if ($upload_file_size > $file_size_max) { echo "对不起,你的文件容量大于规定"; exit; } // 检查读写文件 if (file_exists($store_dir . $upload_file_name) && !$accept_overwrite) { echo "存在相同文件名的文件"; exit; } //复制文件到指定目录 if (!move_uploaded_file($upload_file,$store_dir.$upload_file_name)) { echo "复制文件失败"; exit; } } if (isset($_FILES['upload_file'])) { echo " 你上传了文件:"; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |