php遍历目录下文件并按修改时间排序操作示例


Posted in PHP onJuly 12, 2019

本文实例讲述了php遍历目录下文件并按修改时间排序操作。分享给大家供大家参考,具体如下:

php 遍历目录下文件方法

//遍历目录下文件方法
function printdir($dir)
{
    $files = array();
    //opendir() 打开目录句柄
    if($handle = @opendir($dir)){
    //readdir()从目录句柄中(resource,之前由opendir()打开)读取条目,
    // 如果没有则返回false
        while(($file = readdir($handle)) !== false){//读取条目
            if( $file != ".." && $file != "."){//排除根目录
                if(is_dir($dir . "/" . $file)) {//如果file 是目录,则递归
                    $files[$file] = printdir($dir . "/" . $file);
                } else {
                    //获取文件修改日期
                    $filetime = date('Y-m-d H:i:s', filemtime($dir . "/" . $file));
                    //文件修改时间作为健值
                    $files[$filetime] = $file;
                }
            }
        }
        @closedir($handle);
        return $files;
    }
}

对返回数组按时间排序

//根据修改时间对数组排序
function arraysort($aa) {
    if( is_array($aa)){
        ksort($aa);
        foreach($aa as $key => $value) {
            if (is_array($value)) {
                $arr[$key] = arraysort($value);
            } else {
                $arr[$key] = $value;
            }
        }
        return $arr;
    } else {
        return $aa;
    }
}
$dir = "/php";
//输出 /php 下所有文件
print_r(arraysort(printdir($dir)));

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

PHP 相关文章推荐
php网页后退不再出现过期
Mar 08 PHP
解析smarty模板中类似for的功能实现
Jun 18 PHP
php设置允许大文件上传示例代码
Mar 10 PHP
php使用反射插入对象示例分享
Mar 11 PHP
将CMYK颜色值和RGB颜色相互转换的PHP代码
Jul 28 PHP
php时间计算相关问题小结
May 09 PHP
PHP开发制作一个简单的活动日程表Calendar
Jun 20 PHP
yii2缓存Caching基本用法示例
Jul 18 PHP
Laravel 中使用 Vue.js 实现基于 Ajax 的表单提交错误验证操作
Jun 30 PHP
PHP递归实现快速排序的方法示例
Dec 18 PHP
thinkphp5引入公共部分header、footer的方法详解
Sep 14 PHP
PHP判断访客是否手机端(移动端浏览器)访问的方法总结【4种方法】
Mar 27 PHP
微信推送功能实现方式图文详解
Jul 12 #PHP
PHP FileSystem 文件系统常用api整理总结
Jul 12 #PHP
PHP实现字母数字混合验证码功能
Jul 11 #PHP
Swoole 5将移除自动添加Event::wait()特性详解
Jul 10 #PHP
PHP+redis实现微博的拉模型案例详解
Jul 10 #PHP
php解压缩zip和rar压缩包文件的方法
Jul 10 #PHP
PHP+redis实现微博的推模型案例分析
Jul 10 #PHP
You might like
php fputcsv命令 写csv文件遇到的小问题(多维数组连接符)
2011/05/24 PHP
浅谈PHP中JSON数据操作
2015/07/01 PHP
帝国cms目录结构分享
2015/07/06 PHP
PHP自定义多进制的方法
2016/11/03 PHP
Gambit vs CL BO3 第三场 2.13
2021/03/10 DOTA
javascript 面向对象编程基础:继承
2009/08/21 Javascript
javascript之通用简单的table选项卡实现(二)
2010/05/09 Javascript
从零开始学习jQuery (六) jquery中的AJAX使用
2011/02/23 Javascript
3款实用的在线JS代码工具(国外)
2012/03/15 Javascript
javascript使用正则表达式实现去掉空格之后的字符
2015/02/15 Javascript
jQuery插件FusionCharts实现的3D帕累托图效果示例【附demo源码】
2017/03/25 jQuery
Ext JS 实现建议词模糊动态搜索功能
2017/05/13 Javascript
详解使用vuex进行菜单管理
2017/12/21 Javascript
vue项目中axios使用详解
2018/02/07 Javascript
vuex操作state对象的实例代码
2018/04/25 Javascript
微信小程序五子棋游戏的悔棋实现方法【附demo源码下载】
2019/02/20 Javascript
Vue实现base64编码图片间的切换功能
2019/12/04 Javascript
Element Dropdown下拉菜单的使用方法
2020/07/26 Javascript
vue 函数调用加括号与不加括号的区别
2020/10/29 Javascript
python使用电子邮件模块smtplib的方法
2016/08/28 Python
python梯度下降法的简单示例
2018/08/31 Python
python读取各种文件数据方法解析
2018/12/29 Python
Python 数据可视化pyecharts的使用详解
2019/06/26 Python
python:按行读入,排序然后输出的方法
2019/07/20 Python
德国圣伯纳德草药屋:Kräuterhaus Sanct Bernhard(有中文站)
2018/08/05 全球购物
资深生产主管自我评价
2013/09/22 职场文书
学校门卫工作职责
2013/12/07 职场文书
爱心捐书活动总结
2014/07/05 职场文书
奥巴马上海演讲稿
2014/09/10 职场文书
乡镇党的群众路线教育实践活动个人整改方案
2014/10/31 职场文书
2014年小学数学工作总结
2014/12/12 职场文书
盗窃罪辩护词范文
2015/05/21 职场文书
2016年4月份红领巾广播稿
2015/12/21 职场文书
mysql 8.0.24 安装配置方法图文教程
2021/05/12 MySQL
一次SQL如何查重及去重的实战记录
2022/03/13 MySQL
vue整合百度地图显示指定地点信息
2022/04/06 Vue.js