gpt4 book ai didi

php - scandir 返回 [0] =>。和 [1]=>.. 在数组中

转载 作者:可可西里 更新时间:2023-11-01 00:19:37 25 4
gpt4 key购买 nike

我有一个包含这段代码的简单 PHP 脚本:

$files  = scandir($dir);    
print_r($files);

并注意到在我的阵列中我有:

    [0] => .
[1] => ..
[2] => assets.php
[3] => loader.php

这是我服务器上的错误还是预期行为,它们是什么?如果是后者,有没有办法将它们排除在扫描之外?因为我希望只获取我从目录中创建的脚本文件,而不是其他任何东西。有什么方法可以将它们排除在扫描之外吗?

最佳答案

不,这不是错误.... . 是当前目录,.. 是父目录

参见 PHP Docs

用户提供的注释显示了一种排除它们的方法:

$directory = '/path/to/my/directory';
$scanned_directory = array_diff(scandir($directory), array('..', '.'));

如果您使用 scandir 之外的其他选项,例如 SPL 的 DirectoryIterator,则可以选择排除它们(例如将它与 RegexIterator 组合),或者在迭代时测试它们:

$iterator = new DirectoryIterator(dirname(__FILE__));
foreach ($iterator as $fileinfo) {
if (!$fileinfo->isDot()) {
echo $fileinfo->getFilename() . "\n";
}
}

关于php - scandir 返回 [0] =>。和 [1]=>.. 在数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33966415/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com