Laravel Filesystem:管理Google Drive API中的文件夹

时间:2018-03-28 08:27:47

标签: laravel laravel-5 google-drive-api

我正在关注本教程: - https://gist.github.com/sergomet/f234cc7a8351352170eb547cccd65011

我的Laravel应用程序需要在文件夹中组织文件。因此,无论何时上传文件,都应将其保存在其所属的文件夹中。

在上传文件之前,我必须检查文件夹是否存在。在Laravel中,我使用此方法列出了root的所有目录。

$directories = Storage::directories();

但是,它返回一个字母数字唯一ID的列表,不引用人类可读的名称。即使可以在Google云端硬盘中使用,我也不想创建重复的文件夹。

那么,我们如何得到folder names的列表以及引用ID?

1 个答案:

答案 0 :(得分:0)

您应该创建查找表并存储idfolder names的正确方法。否则,如果您要查询文件夹名称,则需要通过id:

获取元数据
$metadata = Storage::disk('gdrive')->getAdapter()->getMetadata($folderId);

可以检查元数据格式here。您可能会注意到Google云端硬盘是基于ID的文件系统,因此此连接器需要基于ID的路径。