php中目录操作opendir()、readdir()及scandir()用法示例


Posted in PHP onJune 08, 2019

本文实例讲述了php中目录操作opendir()、readdir()及scandir()用法。分享给大家供大家参考,具体如下:

opendir(path,context)若成功,则该函数返回一个目录流,否则返回 false 以及一个 error。可以通过在函数名前加上 “@” 来隐藏 error 的输出。

readdir() 函数返回由 opendir() 打开的目录句柄中的条目。若成功,则该函数返回一个文件名,否则返回 false。

scandir() 函数返回一个数组,其中包含指定路径中的文件和目录。
若成功,则返回一个数组,若失败,则返回 false。如果 directory 不是目录,则返回布尔值 false

付上2段搜到的读取目录的代码,亲测有效

显示目录中文件名

// 打开目录,然后读取其内容
if (is_dir($dir)){
 if ($dh = opendir($dir)){
  while (($file = readdir($dh)) !== false){
   echo "filename:" . $file . "<br>";
  }
  closedir($dh);
 }
}

拷贝一个目录的文件到另一个目录

copy_dir($from_dir,$to_dir);
function copy_dir($from_dir,$to_dir){
  if(!is_dir($from_dir)){
    return false;
  }
  echo "\r\n from:",$from_dir,'---to',$to_dir;
  $from_files = scandir($from_dir);
  //如果不存在目标目录,则尝试创建
  if(!file_exists($to_dir)){
    @mkdir($to_dir);
  }
  if(!empty($from_files)){
    foreach ($from_files as $file){
      if($file == '.' || $file == '..' ){
        continue;
      }
      if(is_dir($from_dir.'/'.$file)){//如果是目录,则调用自身
        copy_dir($from_dir.'/'.$file,$to_dir.'/'.$file);
      }else{//直接copy到目标文件夹
        copy($from_dir.'/'.$file,$to_dir.'/'.$file);
      }
    }
  }
}

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
通过html表格发电子邮件
Oct 09 PHP
10条PHP编程习惯助你找工作
Sep 29 PHP
zend framework多模块多布局配置
Feb 26 PHP
PHP用GD库生成高质量的缩略图片
Mar 09 PHP
基于PHP Socket配置以及实例的详细介绍
Jun 13 PHP
浅析PHP安装扩展mcrypt以及相关依赖项(PHP安装PECL扩展的方法)
Jul 05 PHP
ThinkPHP3.2.3实现分页的方法详解
Jun 03 PHP
Laravel Memcached缓存驱动的配置与应用方法分析
Oct 08 PHP
php使用preg_match()函数验证ip地址的方法
Jan 07 PHP
PHP文字转图片功能原理与实现方法分析
Aug 31 PHP
php微信开发之关键词回复功能
Jun 13 PHP
php设计模式之正面模式实例分析【星际争霸游戏案例】
Mar 24 PHP
php中字符串和整数比较的操作方法
Jun 06 #PHP
使用PHPWord生成word文档的方法详解
Jun 06 #PHP
php/JS实现的生成随机密码(验证码)功能示例
Jun 06 #PHP
PHP实现的62进制转10进制,10进制转62进制函数示例
Jun 06 #PHP
PHP cookie,session的使用与用户自动登录功能实现方法分析
Jun 05 #PHP
PHP实现获取url地址中顶级域名的方法示例
Jun 05 #PHP
PHP token验证生成原理实例分析
Jun 05 #PHP
You might like
PHP实现手机归属地查询API接口实现代码
2012/08/27 PHP
php实现MD5加密16位(不要默认的32位)
2013/08/12 PHP
php取整函数ceil,floo,round的用法及介绍
2013/08/31 PHP
php判断邮箱地址是否存在的方法
2016/02/13 PHP
php简单实现短网址(短链)还原的方法(测试可用)
2016/05/09 PHP
基于PHP实现微信小程序客服消息功能
2019/08/12 PHP
web前端开发也需要日志
2010/12/09 Javascript
基于jquery的内容循环滚动小模块(仿新浪微博未登录首页滚动微博显示)
2011/03/28 Javascript
httpclient模拟登陆具体实现(使用js设置cookie)
2013/12/11 Javascript
jQuery 文本框得失焦点的简单实例
2014/02/19 Javascript
js限制文本框只能输入数字方法小结
2014/06/16 Javascript
js实现创建删除html元素小结
2015/09/30 Javascript
JS取数字小数点后两位或n位的简单方法
2016/10/24 Javascript
解决微信二次分享不显示摘要和图片的问题
2017/08/18 Javascript
解决vue 更改计算属性后select选中值不更改的问题
2018/03/02 Javascript
使用Vue 实现滑动验证码功能
2019/06/27 Javascript
vue键盘事件点击事件加native操作
2020/07/27 Javascript
[02:49:21]2019完美盛典全程录像
2019/12/08 DOTA
Python编写百度贴吧的简单爬虫
2015/04/02 Python
Python3.6使用tesseract-ocr的正确方法
2018/10/17 Python
详解Django配置优化方法
2019/11/18 Python
基于Python把网站域名解析成ip地址
2020/05/25 Python
python实现模拟器爬取抖音评论数据的示例代码
2021/01/06 Python
Pandas的数据过滤实现
2021/01/15 Python
荷兰家电销售网站:Welhof
2020/12/08 全球购物
口腔医学技术应届生求职信
2013/11/09 职场文书
2013年学期结束动员演讲稿
2014/01/07 职场文书
法学专业自我鉴定
2014/02/05 职场文书
2014爱耳日宣传教育活动总结
2014/03/09 职场文书
教师先进工作者事迹材料
2014/05/01 职场文书
初中毕业典礼演讲稿
2014/09/09 职场文书
2015年个人实习工作总结
2015/05/28 职场文书
《索溪峪的野》教学反思
2016/02/19 职场文书
nginx前后端同域名配置的方法实现
2021/03/31 Servers
javascript遍历对象的五种方式实例代码
2021/10/24 Javascript
Python Pandas解析读写 CSV 文件
2022/04/11 Python