【发布时间】:2013-08-19 20:59:08
【问题描述】:
我是 PHP 初学者。我想从特定文件夹/目录中读取文件。我不想要其中的子文件夹或文件。我只想列出目录中的直接文件。我最终得到了 3 个解决方案,glob()、readdir() 和 scandir()。我可以像这样列出文件;
foreach (glob("*.*") as $filename) {
echo $filename."<br />";
}
和
if (is_dir($dir)) {
if ($dh = opendir($dir)) {
while (($file = readdir($dh)) !== false) {
echo "filename: .".$file."<br />";
}
closedir($dh);
}
}
和
$files = scandir($dir);
foreach($files as $val){
echo $val;
}
哪个更快更高效?
【问题讨论】:
-
“哪个更快,服务器的头痛更少”这似乎并不难测试自己。
-
设置计时器,运行循环,设置新计时器,比较时间。繁荣:即时回答
-
glob() 在 7.081E-5 秒内生成。 readdir() 在 0.00151491 秒内生成。 scandir() 在 0.00162292 秒内生成。