这是我的结构目录:
Main directory
all.php
file.php
URL1.txt
SubDirectory1
URL2.txt
file.php
文件 file.php ,如下所示:
$filename = glob("URL*");
echo $filename[0];
档案 all.php
<?php
include('./SubDirectory1/file.php');
?>
问题是当我运行文件 all.php 时,浏览器显示 URL1.txt 。为什么它不显示URL2.txt。怎么解决?谢谢!
答案 0 :(得分:0)
将此功能放入file.php
。你会得到一个数组,你可以var_dump()
。
function glob_recursive($pattern) {
$files = glob($pattern);
foreach (glob(dirname($pattern).'/*', GLOB_ONLYDIR|GLOB_NOSORT) as $dir)
$files = array_merge($files, glob_recursive($dir.'/'.basename($pattern)));
return $files;
}
在all.php
文件中,您可以执行此操作:
print_r(glob_recursive("URL*"));
您将获得具有此模式的所有文件名!因此,您可以使用file()
函数
答案 1 :(得分:0)
工作目录设置为主脚本位置。尝试放置您要搜索的位置的完整路径:
$filename = glob(__DIR__ . DIRECTORY_SEPARATOR . 'URL*');
__DIR__
是当前文件目录(因为PHP 5.3,对于较低的php版本使用dirname(__FILE__)
)。