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 相关文章推荐
用 PHP5 轻松解析 XML
Dec 04 PHP
php 运行效率总结(提示程序速度)
Nov 26 PHP
php下获取Discuz论坛登录用户名、用户组、用户ID等信息的实现代码
Dec 29 PHP
mysql_num_rows VS COUNT 效率问题分析
Apr 23 PHP
PHP header函数分析详解
Aug 06 PHP
PHP中使用smarty生成静态文件的例子
Apr 24 PHP
PHP获取一个字符串中间一部分字符的方法
Aug 19 PHP
PHP间隔一段时间执行代码的方法
Dec 02 PHP
利用php输出不同的心形图案
Apr 22 PHP
thinkPHP多表查询及分页功能实现方法示例
Jul 03 PHP
PHP+RabbitMQ实现消息队列的完整代码
Mar 20 PHP
php中的依赖注入实例详解
Aug 14 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电台频率大全 - 23 四川省
2020/03/11 无线电
PHP的一个完美GIF等比缩放类,附带去除缩放黑背景
2014/04/01 PHP
PHP实现将浏览历史页面网址保存到cookie的方法
2015/01/26 PHP
php session的应用详细介绍
2017/03/22 PHP
PHP设计模式之模板方法模式定义与用法详解
2018/04/02 PHP
PHP设计模式之模板方法模式实例浅析
2018/12/20 PHP
Javascript里使用Dom操作Xml
2007/01/22 Javascript
jQuery function的正确书写方法
2013/08/02 Javascript
jQuery EasyUI datagrid实现本地分页的方法
2015/02/13 Javascript
jQuery实现自动调整字体大小的方法
2015/06/15 Javascript
vue的无缝滚动组件vue-seamless-scroll实例
2017/12/18 Javascript
JS实现碰撞检测的方法分析
2018/01/19 Javascript
vue实现通讯录功能
2018/07/14 Javascript
nodejs同步调用获取mysql数据时遇到的大坑
2019/03/02 NodeJs
JQuery表单元素取值赋值方法总结
2020/05/12 jQuery
vue中activated的用法
2021/01/03 Vue.js
[01:06]欢迎来到上海,TI9
2018/08/26 DOTA
Python简单获取自身外网IP的方法
2016/09/18 Python
Python实现可自定义大小的截屏功能
2018/01/20 Python
python GUI库图形界面开发之PyQt5信号与槽基础使用方法与实例
2020/03/06 Python
python列表删除和多重循环退出原理详解
2020/03/26 Python
使用opencv中匹配点对的坐标提取方式
2020/06/04 Python
Python类成员继承重写的实现
2020/09/16 Python
HTML5移动开发图片压缩上传功能
2016/11/09 HTML / CSS
稀有和绝版书籍:Biblio.com
2017/02/02 全球购物
吉列剃须刀美国官网:Gillette美国
2018/07/13 全球购物
软件配置管理有什么好处
2015/04/15 面试题
酒店中秋节促销方案
2014/01/30 职场文书
工商局局长个人对照检查材料思想汇报
2014/09/23 职场文书
给领导的感谢信范文
2015/01/23 职场文书
介绍信样本
2015/01/31 职场文书
新年晚会开场白
2015/05/29 职场文书
只用20行Python代码实现屏幕录制功能
2021/06/02 Python
pytorch 权重weight 与 梯度grad 可视化操作
2021/06/05 Python
Dashboard管理Kubernetes集群与API访问配置
2022/04/01 Servers
element tree树形组件回显数据问题解决
2022/08/14 Javascript