我正在运行自制的php和nginx安装。我的根网站目录是/ var / www。在里面,我有一个包含大量文件的文件夹:
rmp:~ rmp$ cd /var/www/somefolder
rmp:somefolder rmp$ ls
//lists all the files
我创建了一个脚本来遍历目录并对文件执行某些操作:
$dir = new DirectoryIterator(dirname('/var/www/somefolder/'));
foreach ($dir as $fileinfo) {
if (!$fileinfo->isDot()) {
var_dump($fileinfo->getFilename());
}
}
我没有在 somefolder / 文件夹中获取所有文件名,而是在 / var / www
中获取文件列表我认为这很奇怪,所以我尝试了一个相对路径,因为我的脚本位于文件夹并列 somefolder 我试过路径:
$dir = new DirectoryIterator(dirname('../somefolder/'));
再次, / var / www
的内容这个问题似乎很简单。让我感到非常愚蠢。
我想也许服务器认为我在不同的目录中?我尝试echo getcwd()
并获得了/private/var/www
所以我也尝试了带有私有的绝对值的所有内容。还是一样。我错过了什么?
这是奇怪的事情,如果我走的路:
/var/www/somefolder/somefolder
然后它有效!?它不应该。有什么想法吗?
答案 0 :(得分:1)
因为dirname('/ var / www / somefolder /')结果是'/ var / www',你可以测试它。