博主信息
博文 34
粉丝 0
评论 0
访问量 33223
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
遍历目录,上传文件实例
罗盼的博客
原创
757人浏览过

实例

<?php
//遍历目录
function my_dir($dir) {
    $files = array();
    if(@$handle = opendir($dir)) { //注意这里要加一个@,不然会有warning错误提示:)
        while(($file = readdir($handle)) !== false) {
            if($file != ".." && $file != ".") { //排除根目录;
                if(is_dir($dir."/".$file)) { //如果是子文件夹,就进行递归
                    $files[$file] = my_dir($dir."/".$file);
                } else { //不然就将文件的名字存入数组;
                    $files[] = $file;
                }
 
            }
        }
        closedir($handle);
        return $files;
    }
}
echo "<pre>";
print_r(my_dir("../bloger/shuzu"));
echo "</pre>";
?>
运行实例 »

点击 "运行实例" 按钮查看在线实例

实例

//文件上传

<form method="post" action="<?php htmlspecialchars($_SERVER['PHP_SELF'])?>" enctype="multipart/form-data"  >

名字 <input type="text" name="nickname" value=" " type=""/>
<br/>
密码<input type="password" name="password" value="" />
<br/>
图像 <input class="form-control" name="head" type="file" />

<input type="submit" value="提交"/>
</form>
<?php
header("content-type:text/html;charset=utf-8");
//echo htmlspecialchars($_SERVER['PHP_SELF']);
//echo '<pre>';
//print_r($_SERVER);
date_default_timezone_set('PRC');//设置中国时区
$images_type = array('image/jpeg','image/png','image/jpg','image/gif');//这个可以在前端进行筛选,给file加一个accept="image/jpeg,image/gif,image/png"
if($_SERVER['REQUEST_METHOD'] == 'POST'){
  //print_r($_FILES['head']);
      if(isset($_FILES['head'])){
        $error=$_FILES['head']['error'];//获取错误类型
            if($error ==0){
                     if(in_array($_FILES['head']['type'],$images_type)){
                            if($_FILES['head']['name']){        
                               $old_name = $_FILES['head']['name']; //取出老图片的名字
                               $old_name = explode('.',$old_name);//分割老图片后缀名
                               $old_name = end($old_name);//取出后缀名
                               $new_name = rand(10000,99999);//取随机数
                               $date_name = date('YmdHis',time());//取时间
                               $tem =$_FILES['head']['tmp_name'];//取出老图片的位置
                               $update = 'img/'.$date_name.$new_name.'.'.$old_name;//给新图片取名字加上老图片后缀名                     
                                   if(move_uploaded_file($tem,$update)){
                                    echo '上传图片成功!';
                                   }//把老图片移动到服务器并取新名字                           
                            }     
                      } else{echo '<script>alert(\'图片类型错误!\')</script>';} 
           }else{
                    switch($error){
                        case 1:
                           echo '文件超过php.ini配置大小!';
                           break;
                        case 2:
                           echo '文件超过表单设置大小!';
                           break;
                        case 3:
                           echo '文件部分上传!';
                           break;
                        case 4:
                           echo '没有文件上传!';
                           break;
                        default:
                           echo '未知错误类型!';
                    }
            
           }           
      }

}

?>

运行实例 »

点击 "运行实例" 按钮查看在线实例


批改状态:合格

老师批语:
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学