Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/244.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP中文件和目录的区分_Php_File_Directory - Fatal编程技术网

PHP中文件和目录的区分

PHP中文件和目录的区分,php,file,directory,Php,File,Directory,我的问题是一个提取目录内容的php页面。 正如您在下面的代码段中所看到的,路径是通过GET传递的。 我第一次调用该页时,它正确地读取了所有内容,但如果只是读取包含子目录的文件夹,则会将其识别为文件。 你有什么建议或解决办法吗 谢谢 您可以使用is_dir()或is_file()来检查这一点,然后使用递归函数来读取它们。如果只是将is标记为目录,则可以使用检查 您可以使用is_dir()或is_file()来检查这一点,然后使用递归函数来读取这些内容。如果只是将is标记为目录,则可以使用检查 您

我的问题是一个提取目录内容的php页面。
正如您在下面的代码段中所看到的,路径是通过GET传递的。
我第一次调用该页时,它正确地读取了所有内容,但如果只是读取包含子目录的文件夹,则会将其识别为文件。
你有什么建议或解决办法吗
谢谢


您可以使用
is_dir()
is_file()
来检查这一点,然后使用递归函数来读取它们。如果只是将is标记为目录,则可以使用检查

您可以使用
is_dir()
is_file()
来检查这一点,然后使用递归函数来读取这些内容。如果只是将is标记为目录,则可以使用检查

您可以使用来轻松实现这一点:

$oIterator = new DirectoryIterator(dirname(__FILE__));
foreach ($oIterator as $oFileInfo) {

    // Either . or ..
    if ($oFileinfo->isDot()) {

    }

    // A directory
    if ($oFileInfo->isDir()) {

    }
}
您可以使用来轻松实现这一点:

$oIterator = new DirectoryIterator(dirname(__FILE__));
foreach ($oIterator as $oFileInfo) {

    // Either . or ..
    if ($oFileinfo->isDot()) {

    }

    // A directory
    if ($oFileInfo->isDir()) {

    }
}

这个解决方案很管用,但并不管用。我尝试使用if($oFileinfo!=“)&&($oFileinfo!=“.”),但也会提取“.”和“.”目录。。有什么解决办法吗?这个办法很管用,但不管用。我尝试使用if($oFileinfo!=“)&&($oFileinfo!=“.”),但也会提取“.”和“.”目录。。有解决办法吗?