scaleflex/filerobot

v1.0.0 2021-09-07 14:41 UTC

This package is auto-updated.

Last update: 2024-09-29 05:56:47 UTC


README

这个PHP库被设计为一个文件系统适配器,用作连接到Filerobot和在其上操作的基础砖块。

它经过测试且与所有主要PHP框架兼容,如Symfony或Laravel,但也欢迎您确保它在F3或Yii等其他框架上运行顺畅,并报告成功或需要适配的情况。

一如既往,如果您想丰富这个项目,欢迎通过 hello@scaleflex.com 联系我们。

安装说明

安装

通过Composer简单安装

composer require scaleflex/filerobot

Install Output Laravel

将添加到 vendor

Install Laravel Vendor

引导

使用标准 Scaleflex\Filerobot\FilerobotAdapter;

new FilerobotAdapter(your_api_key)
<?php
use Scaleflex\Filerobot\FilerobotAdapter;

class Foo {
    protected $filerobot;
    
    public function __construct()
    {
        $this->filerobot = new FilerobotAdapter('fa5fe3303dd34e1da4810915c7c3fd6f');
    }
    
    public function bar () {
        return $this->filerobot->list_file('/api-demo');
    }
}

使用方法

文件操作

列出或搜索文件

列出您的Filerobot容器中的所有文件。您也可以通过提供搜索字符串进行搜索。可以是递归的。

return $this->filerobot->list_file('/api-demo');

获取文件详细信息

通过UUID获取文件详细信息需要通过API进行认证。

return $this->filerobot->detail_file($file_uuid);

重命名文件

将文件重命名为请求体中给出的值。

return $this->filerobot->rename_file($file_uuid, $new_filename);

移动文件

将文件移动到新文件夹。如果该文件夹不存在,则会创建它。

return $this->filerobot->move_file($file_uuid, $folder_uuid);

删除文件

使用文件的UUID作为参考来删除文件。

return $this->filerobot->delete_file($file_uuid);

上传单个或多个文件

有多种方法可供选择,以满足不同的需求

- 方法1 - multipart/form-data请求
return $this->filerobot->upload_file_multipart('/api-demo', '/path/bear.jpg', 'bear.jpg');
- 方法2 - 远程托管文件的URL(s)
return $this->filerobot->upload_file_remote('/api-demo', '[{"name": "new_filename.jpg",  "url":"http://sample.li/boat.jpg" }]');
- 方法3 - base64编码的内容
$image = base64_encode(file_get_contents('path/bear.jpeg'));
return $this->filerobot->upload_file_binary('/folder/new_image_from_base64.png', $image)

流式上传文件

此方法适用于上传大于500MB的文件。请求的内容将流式传输到存储容器。

$photo = fopen('/path/bear.jpg', 'r');
return $this->filerobot->stream_upload_file('/api-demo', $photo, 'bear.jpg');

更新文件元数据

return $this->filerobot->update_file_metadata($file_uuid, '{"title": {"de_DE": "Boot",  "en_US": "boat"}}');

文件夹操作

列出和搜索文件夹

列出您的Filerobot容器中的所有文件夹。您可以通过提供搜索字符串进行搜索。可以是递归的。

return $this->filerobot->list_folder('/api-demo');

获取文件夹详细信息

获取通过folder_uuid标识的文件夹的所有信息。此API还将允许您检查文件夹的存在。

return $this->filerobot->detail_folder($folder_uuid);

重命名文件夹

将通过folder_uuid标识的文件夹重命名为请求体中给出的值。

return $this->filerobot->rename_folder($folder_uuid, $new_foldername);

移动文件夹

将文件夹(通过folder_uuid标识)移动到新的位置(文件夹),该位置可以通过destination_folder_uuid识别。

return $this->filerobot->move_folder($folder_uuid, $destination_folder_uuid);

删除文件夹

递归删除文件夹及其所有子文件夹。

return $this->filerobot->delete_folder($folder_uuid);

创建文件夹

从请求体中给出的值创建文件夹。

return $this->filerobot->create_folder($foldername)