gpt4 book ai didi

php - 如何列出目录中的文件和文件夹(PHP)

转载 作者:IT王子 更新时间:2023-10-28 23:54:17 24 4
gpt4 key购买 nike

您好,我正在尝试使用 php 显示目录中的所有文件和文件夹

例如

目录:系统/信息/

文件夹 - 用户

来自用户的文件 - User1.txt

来自用户的文件 - User2.txt

来自用户的文件 - User3.txt

来自用户的文件 - User4.txt

文件夹 - 玩家

来自玩家的文件 - Player1.txt

来自玩家的文件 - Player2.txt

来自玩家的文件 - Player3.txt

来自玩家的文件 - Player4.txt

请有人带我走正确的街道

谢谢

最佳答案

PHP 5 有 RecursiveDirectoryIterator .

手册有一个基本的例子:

<?php

$directory = '/system/infomation/';

$it = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($directory));

while($it->valid()) {

if (!$it->isDot()) {

echo 'SubPathName: ' . $it->getSubPathName() . "\n";
echo 'SubPath: ' . $it->getSubPath() . "\n";
echo 'Key: ' . $it->key() . "\n\n";
}

$it->next();
}

?>

编辑 -- 这是一个稍微高级一点的示例(只是稍微有点),它产生的输出类似于您想要的(即文件夹名称然后是文件)。

// Create recursive dir iterator which skips dot folders
$dir = new RecursiveDirectoryIterator('./system/information',
FilesystemIterator::SKIP_DOTS);

// Flatten the recursive iterator, folders come before their files
$it = new RecursiveIteratorIterator($dir,
RecursiveIteratorIterator::SELF_FIRST);

// Maximum depth is 1 level deeper than the base folder
$it->setMaxDepth(1);

// Basic loop displaying different messages based on file or folder
foreach ($it as $fileinfo) {
if ($fileinfo->isDir()) {
printf("Folder - %s\n", $fileinfo->getFilename());
} elseif ($fileinfo->isFile()) {
printf("File From %s - %s\n", $it->getSubPath(), $fileinfo->getFilename());
}
}

关于php - 如何列出目录中的文件和文件夹(PHP),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4050511/

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