<?php
/**
* 遍历文件夹和文件列
* @author lizhiming
* @date 2016/06/30
*/
define('DS', DIRECTORY_SEPARATOR); class File
{
//返回数组
private $DirArray = array();
private $FileArray = array();
private $DirFileArray = array(); private $Handle, $Dir, $File; //获取目录列表
public static function getDir(& $Dir)
{
if (is_dir($Dir)) {
if (false != ($Handle = opendir($Dir))) {
while (false != ($File = readdir($Handle))) {
if ($File != '.' && $File != '..' && !strpos($File, '.') && is_dir($File)) {
$DirArray[] = $File;
}
}
closedir($Handle);
}
} else {
$DirArray[] = '[Path]:\'' . $Dir . '\' is not a dir or not found!';
}
return $DirArray;
} //获取文件列表
public static function getFile(& $Dir)
{
if (is_dir($Dir)) {
if (false != ($Handle = opendir($Dir))) {
while (false != ($File = readdir($Handle))) {
if (($File != '.' && $File != '..' && strpos($File, '.')) || is_file($File)) {
$FileArray[] = $File;
}
}
closedir($Handle);
}
} else {
$FileArray[] = '[Path]:\'' . $Dir . '\' is not a dir or not found!';
}
return $FileArray;
} //获取目录/文件列表
public static function getDirFile(& $Dir)
{
if (is_dir($Dir)) {
$DirFileArray['DirList'] = self::getDir($Dir);
if ($DirFileArray) {
foreach ($DirFileArray['DirList'] as $Handle) {
$File = $Dir . DS . $Handle;
$DirFileArray['FileList'][$Handle] = self::getFile($File);
}
}
} else {
$DirFileArray[] = '[Path]:\'' . $Dir . '\' is not a dir or not found!';
}
return $DirFileArray;
} }

php 遍历目录下的所以文件和文件夹的更多相关文章

  1. VC/MFC 下 递归遍历目录下的所有子目录及文件

    在MFC下要实现文件夹的递归遍历,可用CFileFind类,依次读取文件夹下的子文件夹和文件,并判断通过判断是文件夹还是文件来决定递归遍历.递归遍历代码如下: /******************* ...

  2. .Net 遍历目录下第一层的子文件夹和子文件夹里的文件

    今天再完成一道任务的时候需要遍历得到所有txt文件,搜索很久终于得到了一个很方便的方法. foreach (string o in Directory.GetDirectories(@"D: ...

  3. IO流-递归遍历目录下指定后缀名结尾的文件名称

    /* *自定义遍历目录下指定后缀名结尾文件的名称的方法: * * param file:指定目录 name:指定后缀名 */ 1 public static void FileName(File fi ...

  4. php源码之遍历目录下的所有的文件

    <?php //遍历目录下的所有的文件 -- 递归调用 // http://www.manongjc.com/article/1495.html function get_all_file1($ ...

  5. Python遍历目录下所有文件的最后一行进行判断若错误及时邮件报警-案例

    遍历目录下所有文件的最后一行进行判断若错误及时邮件报警-案例: #-*- encoding: utf-8 -*- __author__ = 'liudong' import linecache,sys ...

  6. (实用篇)PHP不用递归遍历目录下所有文件的代码

    <?php /** * PHP 非递归实现查询该目录下所有文件 * @param unknown $dir * @return multitype:|multitype:string */ fu ...

  7. 使用 NIO.2 遍历目录下所有的Java文件

    package wellGrounded; import java.io.IOException; import java.nio.file.FileVisitResult; import java. ...

  8. php遍历目录下文件,并读取内容

    <?php echo "<h2>遍历目录下文件,并读取内容</h2><br>\n"; function listDir($dir) { i ...

  9. C/C++遍历目录下的所有文件(Windows/Linux篇,超详细)

    本文可转载,转载请注明出处:http://www.cnblogs.com/collectionne/p/6815924.html. 前面的一篇文章我们讲了用Windows API遍历一个目录下的所有文 ...

  10. C/C++遍历目录下的所有文件(Windows篇,超详细)

    注: 1. 本文讨论的是怎么用Windows API遍历目录下的所有文件.除Windows API,还有一种Windows/Linux通用的方式,使用<io.h>. 2. 本文部分翻译自M ...

随机推荐

  1. Linux中/etc/hosts文件总是被自动修改

    关闭NetworkManager服务即可. 临时关闭: service  NetworkManager stop 永久关闭: chkconfig NetworkManager off 在centos6 ...

  2. Hadoop启动报Error: JAVA_HOME is not set and could not be found解决办法

    Hadoop安装完后,启动时报Error: JAVA_HOME is not set and could not be found. 解决办法: 修改/etc/hadoop/hadoop-env.sh ...

  3. Hash_P1026毒药?解药?

    #include <iostream> #include <cstdio> #include <algorithm> #include <cstring> ...

  4. cmd 利用IE打开网页

    "C:\Program Files\Internet Explorer\iexplore.exe" "http://dmsite.chinacloudsites.cn/r ...

  5. 控件的invoke和beginInvoke方法

    System.Windows.Forms.Timer 的timer是在主线程上执行的,因此在timer的tick事件中操作界面上的控件不会发生线程的安全性检测. Control的invoke和begi ...

  6. lbs(查看附近的人),看看社交软件如何实现查看附近的人

    最近在做一款移动端棋牌游戏,为了进一步提高用户体验.拉近玩家的距离,我们决定在游戏中加入好友功能,而对于体验好友功能的玩家来说,要是玩牌的时候可以看看附近都有谁在玩牌,跟他们交流交流玩牌心得什么的无疑 ...

  7. 【Alpha版本】 第六天 11.14

    一.站立式会议照片: 二.项目燃尽图: 三.项目进展: 成 员 昨天完成任务 今天完成任务 明天要做任务 问题困难 心得体会 胡泽善 完成管理员的三大界面框架.完成管理主界面 完成我要招聘的招聘详情显 ...

  8. 【Alpha版本】 第八天 11.16

    一.站立式会议照片: 二.项目燃尽图: 三.项目进展: 成 员 昨天完成任务 今天完成任务 明天要做任务 问题困难 心得体会 胡泽善 完成我要应聘的列表显示,完成账户信息设置界面 完成我要应聘的详情显 ...

  9. linux修改ip地址的方法

    1. 临时设置ip地址 ifconfig eth0 IP地址 (网络掩码和网关如果不设置就使用默认0) 这种方法只是临时修改,重启网卡或服务器又会还原 2.使用vi编辑器设置 1122.www.qix ...

  10. LAMP-五分钟搭建个人论坛

    LAMP-五分钟搭建个人论坛 系统版本:CentOS7 1.##安装lamp及依赖软件wget http://repo.mysql.com/mysql-community-release-el7-5. ...