php列出"目录下文件清单"的函数

虽然挺简单的功能需求,但是昨天晚上还是弄了一会,都怪旁边一直有人跟我说话(唉,找点外在因素安慰自己一下)。

$filespath = array();
function getFilesPath($baseDir){
    global  $filespath;
    if (is_dir($baseDir)) {
        if ($dh = opendir($baseDir)) {
            while (($file = readdir($dh)) !== false) {
                if( $file == '.'    ||   $file == '..' )continue;
                $path = $baseDir . $file;
                $filetype = filetype($path);
                if( $filetype == 'file'){
                    if(preg_match('/^\d{4}-\d{2}-\d{2}\.log|txt$/i',$file) ){
                        $filespath[]=$path;
                    }
                }elseif($filetype == 'dir'){
                    getFilesPath($path.'/');
                }
            }
            closedir($dh);
        }
    }else{
        echo 'is not a Dir!';
        exit;
    }
}

getFilesPath($baseDir);


var_dump($filesPath);




解释一下,我的目的是要列出一个目录下(及目录的目录下的[重复吧]......,专业词叫递归)的所有 2012-12-12.log 或 2012-12-12.txt 形式的文件路径。加到一个$filespath的数组内保存起来。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值