使用php函数scandir排除特定目录
来源: 阅读:804 次 日期:2014-07-31 10:07:14
温馨提示: 小编为您整理了“使用php函数scandir排除特定目录”,方便广大网友查阅!

scandir()函数返回一个数组,其中包含指定路径中地文件和目录.如下所示:

例子:

代码如下:

<?php

print_r(scandir('test_directory'));

?>

输出:

代码如下:

array

(

[0]=>.

[1]=>..

[2]=>1.txt

[3]=>2.txt

)

大部分情况只需要该目录地文件列表数组,如下:

代码如下:

array

(

[0]=>1.txt

[1]=>2.txt

)

一般是通过排除“.”或者“..”地数组项解决地:

代码如下:

<?php

functionfind_all_files($dir)

{

    $root = scandir($dir);

    foreach($rootas$value)

    {

        if($value === '.' || $value === '..'){

            continue;

        }

        if(is_file($dir/$value)){

            $result[] = $dir/$value;

            continue;

        }

        foreach(find_all_files($dir/$value)as$value)

        {

            $result[] = $value;

            }

        }

    return$result;

    }

?>

另外一种方法,利用array_diff函数,剔除scandir函数执行的到地数组:

代码如下:

<?php

$directory='/path/to/my/directory';

$scanned_directory=array_diff(scandir($directory),array('..','.'));

?>

通常情况代码管理会产生.svn文件,或者限制目录访问权限地.htaccess等文件.所以通过array_diff函数来过滤会更方便.

更多信息请查看IT技术专栏

更多信息请查看网络编程
由于各方面情况的不断调整与变化, 提供的所有考试信息和咨询回复仅供参考,敬请考生以权威部门公布的正式信息和咨询为准!
关于我们 | 联系我们 | 人才招聘 | 网站声明 | 网站帮助 | 非正式的简要咨询 | 简要咨询须知 | 加入群交流 | 手机站点 | 投诉建议
工业和信息化部备案号:滇ICP备2023014141号-1 云南省教育厅备案号:云教ICP备0901021 滇公网安备53010202001879号 人力资源服务许可证:(云)人服证字(2023)第0102001523号
云南网警备案专用图标
联系电话:0871-65317125(9:00—18:00) 获取招聘考试信息及咨询关注公众号:
咨询QQ:526150442(9:00—18:00)版权所有:
云南网警报警专用图标
Baidu
map