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 相关文章推荐
php smarty 二级分类代码和模版循环例子
Jun 01 PHP
phpize的深入理解
Jun 03 PHP
MongoDB在PHP中的常用操作小结
Feb 20 PHP
PHP使用PDO连接ACCESS数据库
Mar 05 PHP
PHP 验证登陆类分享
Mar 13 PHP
基于php的CMS中展示文章类实例分析
Jun 18 PHP
PHP伪造来源HTTP_REFERER的方法实例详解
Jul 06 PHP
PHP实现QQ空间自动回复说说的方法
Dec 02 PHP
Joomla实现组件中弹出一个模式(modal)窗口的方法
May 04 PHP
总结PHP删除字符串最后一个字符的三种方法
Aug 30 PHP
IOS 开发之NSDictionary转换成JSON字符串
Aug 14 PHP
浅析PHP中的 inet_pton 网络函数
Dec 16 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
实用函数5
2007/11/08 PHP
php 模拟post_验证页面的返回状态(实例讲解)
2013/10/28 PHP
PHP图片等比例缩放生成缩略图函数分享
2014/06/10 PHP
Thinkphp实现MySQL读写分离操作示例
2014/06/25 PHP
javascript getElementsByTagName
2011/01/31 Javascript
js 对小数加法精度处理示例说明
2013/12/27 Javascript
浅析JQuery中的html(),text(),val()区别
2014/09/01 Javascript
jQuery简单实现仿京东分类导航层效果
2016/06/07 Javascript
jQuery实现base64前台加密解密功能详解
2017/08/29 jQuery
在Vant的基础上实现添加表单验证框架的方法示例
2018/12/05 Javascript
jquery将json转为数据字典的实例代码
2019/10/11 jQuery
Vue-cli项目部署到Nginx服务器的方法
2019/11/01 Javascript
五句话帮你轻松搞定js原型链
2020/12/09 Javascript
[40:19]2018完美盛典CS.GO表演赛
2018/12/17 DOTA
简单的python后台管理程序
2017/04/13 Python
完美解决安装完tensorflow后pip无法使用的问题
2018/06/11 Python
Python3 合并二叉树的实现
2019/09/30 Python
如何使用python传入不确定个数参数
2020/02/18 Python
Python Django view 两种return的实现方式
2020/03/16 Python
CSS3 实现倒计时效果
2020/11/25 HTML / CSS
国际化的太阳镜及太阳镜配件零售商:Sunglass Hut
2016/07/26 全球购物
乌克兰珠宝大卖场:Zlato.ua
2020/09/27 全球购物
linux面试题参考答案(4)
2014/09/21 面试题
中专生自我鉴定书范文
2013/12/28 职场文书
大学班级学风建设方案
2014/05/01 职场文书
关于爱国的演讲稿
2014/05/07 职场文书
法学专业毕业生自荐信
2014/06/11 职场文书
公司门卫岗位职责范本
2014/07/08 职场文书
教师暑期培训感言
2014/08/15 职场文书
创先争优公开承诺书
2014/08/30 职场文书
2014校长四风问题对照检查材料思想汇报
2014/09/16 职场文书
教学改革问题查摆整改措施
2014/09/27 职场文书
介绍信怎么写
2015/05/05 职场文书
opencv 分类白天与夜景视频的方法
2021/06/05 Python
JS实现简单九宫格抽奖
2022/06/28 Javascript
Win10此设备不支持接收Miracast无法投影的解决方法
2022/07/07 数码科技