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 相关文章推荐
教你IIS6的PHP最佳配置方法
Sep 05 PHP
虚拟主机中对PHP的特殊设置
Oct 09 PHP
SMARTY学习手记
Jan 04 PHP
php adodb分页实现代码
Mar 19 PHP
基于curl数据采集之单页面采集函数get_html的使用
Apr 28 PHP
让PHP显示Facebook的粉丝数量方法
Jan 08 PHP
学习php中的正则表达式
Aug 17 PHP
浅谈PHP检查数组中是否存在某个值 in_array 函数
Jun 13 PHP
php及codeigniter使用session-cookie的方法(详解)
Apr 06 PHP
PHP常见数组排序方法小结
Aug 20 PHP
PHP通过文件保存和更新信息的方法分析
Sep 12 PHP
php 使用expat方式解析xml文件操作示例
Nov 26 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
全国FM电台频率大全 - 19 广东省
2020/03/11 无线电
在线竞拍系统的PHP实现框架(二)
2006/10/09 PHP
PHP批量生成图片缩略图的方法
2015/06/18 PHP
PHP的Yii框架中行为的定义与绑定方法讲解
2016/03/18 PHP
php利用嵌套数组拼接与解析json的方法
2017/02/07 PHP
PHP实现的装箱算法示例
2018/06/23 PHP
laravel model模型处理之修改查询或修改字段时的类型格式案例
2019/10/17 PHP
JQuery中对服务器控件 DropdownList, RadioButtonList, CheckboxList的操作总结
2011/06/28 Javascript
JavaScript中将一个值转换为字符串的方法分析[译]
2012/09/21 Javascript
node.js中的socket.io入门实例
2014/04/26 Javascript
基于promise.js实现nodejs的promises库
2014/07/06 NodeJs
cookie的secure属性详解
2015/04/08 Javascript
vuejs如何配置less
2017/04/25 Javascript
layui导航栏实现代码
2017/05/19 Javascript
JS写XSS cookie stealer来窃取密码的步骤详解
2017/11/20 Javascript
vue 实现模糊检索并根据其他字符的首字母顺序排列
2019/09/19 Javascript
jQuery实现日历效果
2020/09/11 jQuery
python设置检查点简单实现代码
2014/07/01 Python
Python环境下安装使用异步任务队列包Celery的基础教程
2016/05/07 Python
浅谈django model postgres的json字段编码问题
2018/01/05 Python
Python 获取numpy.array索引值的实例
2019/12/06 Python
python网络编程:socketserver的基本使用方法实例分析
2020/04/09 Python
详解快速开发基于 HTML5 网络拓扑图应用
2018/01/08 HTML / CSS
DJI美国:消费类无人机领域的领导者
2018/04/27 全球购物
计算机相关的自我评价
2014/01/15 职场文书
应届大学生求职信
2014/07/20 职场文书
2014迎接教师节演讲稿
2014/09/10 职场文书
财务工作犯错检讨书
2014/10/07 职场文书
学生检讨书怎么写?
2014/10/10 职场文书
2014年乡镇人大工作总结
2014/11/25 职场文书
2014年最新版离婚协议书范本
2014/11/25 职场文书
2014年中职班主任工作总结
2014/12/16 职场文书
学习与创新自我评价
2015/03/09 职场文书
2015年办公室个人工作总结
2015/04/20 职场文书
剧场版《转生恶役只好拔除破灭旗标》公开最新视觉图 2023年上映
2022/04/02 日漫
win10重装系统后上不了网怎么办 win10重装系统网络故障的解决办法
2022/07/23 数码科技