这是关于Laravel 5的。
我可以在IlluminateFilesystemFilesystem
中看到一种称为glob($pattern, $flags = 0)
的方法
不幸的是,此方法未反映在Laravel 5附带的默认FilesystemAdapter
中。
这会很棒,因为我需要做类似 Storage::disk('local')->glob([_]*[.blade.php]);
的操作(以便获取所有存储的刀片文件都以下划线开头。
实现这一目标的最干净方法是什么?
我认为您不能在这里运行glob
,但是您可以获取所有文件然后过滤它们,例如:
$files = array_filter(Storage::disk('local')->files(), function ($file)
{
return preg_match('/_(.*).blade.php$/U', $file);
});
当然,您需要根据需要决定使用files
或allFiles
(递归)。如果您有数千个文件,这可能不是最佳解决方案,但如果您没有,那就足够了