我试图通过Files外观在我的Laravel应用程序中获取文件列表,但它不能像预期的那样工作.

$path = storage_path('path/to/folder/' . $request->folder);
$files = File::files($path);
return response()->json($files, 200);

这是我正在运行的代码.目前我正在使用的目录中有5个文件来测试这一点.

响应将正确数量的文件显示为数组中的对象,但它们都是空的.

enter image description here

我针对的路径是正确的,文件存在,添加/删除文件反映了响应中的预期.但我不明白为什么这些东西是空的.

我遗漏了什么?

推荐答案

您可以通过访问SplFileInfo个对象的属性和方法来获取有关目录中文件的信息.

$path = storage_path('path/to/folder/' . $request->folder);
$files = File::files($path);

$fileDetails = [];

foreach ($files as $file) {
    $fileDetails[] = [
        'name' => $file->getFilename(),
        'path' => $file->getRealPath(),
        'size' => $file->getSize(),
        'lastModified' => $file->getMTime(),
    ];
}

return response()->json($fileDetails, 200);

Php相关问答推荐

如何在PHP中将浮点数转换为其IEEE754十六进制字符串?

仅显示特定WooCommerce产品类别的额外产品字段

在Woocommerce变量产品中的标签附近显示所选属性选项名称

不包括WooCommerce中单独销售的产品

将日期数组排序为年->;月

在WooCommerce管理中为订单项目添加自定义字段价格值

PHP按另一个二维数组的排序顺序对二维数组进行排序

用ajax获取文件 - CORS问题&;设置缓存?

如何解决 Laravel 外键错误?

使用帖子 ID 更新 wp 帖子

Laravel 在数据库上显示加密列

WooCommerce 中一件免费产品的数量折扣

如何正确判断 PHP 是否已正确配置为使用 DOMDocument?

后退按钮不起作用 laravel ajax crud

Laravel 路由参数中的 ":" 是什么?

Laravel auth()->id() 在生产服务器中不工作

php preg_match 验证 Tiktok 用户名

在 laravel 中更新表单时如何在 Select 选项中保留旧值?

列表不在 GROUP BY 子句中并且包含 X2CRM 中的非聚合列

如何使用先前 SELECT 的结果来 SELECT SQL 数据