我尝试使用web
组件获取Finder
目录中的文件列表。
但组件无法正常工作。
我试试这个:
$finder = new Finder();
$finder->files()->in('web/images/avatars');
但我有错误
" \" web / images / avatars \"目录不存在。"
这很奇怪,因为我的Console Component
命令中有类似的代码,而且效果很好
然后我尝试了那段代码
$finder = new Finder();
$finder->files()->in(__DIR__ . '/../../../../../web/images/avatars');
它的工作,但它返回一个空数组
我检查了该目录是否有权阅读,一切正常
如果这有用,我会尝试在User Provider
答案 0 :(得分:0)
__DIR__
指的是文件所在的目录 - 可能位于src /目录的深处,因此要求退回然后进入Web目录本身。
如果该命令在命令行中起作用,但在从网站运行时不起作用,则问题可能是文件权限之一 - 例如,在Ubuntu上的Apache下,文件以用户www-data
运行,并且可能没有完全访问权限来读取或写入文件(或者,重要的是,整个目录树,以便能够读取目录中的文件列表)。