Cloudinary API for Laravel 的包装器

0.8.0 2022-01-30 10:40 UTC

README

该项目目前没有活跃维护。根据问题反馈,我可能回应较慢。我已经转移到一些新的项目,这些项目不在 PHP 生态系统内。您可以通过我的电子邮件联系我。

如果您在发布时将其分支为您的项目,请记得在 https://github.com/teepluss/laravel4-cloudinary 给予原始作者适当的信用。

Build Status License Latest Version Total Downloads

最初从 https://github.com/teepluss/laravel4-cloudinary 分支。

如果您有任何想实现的特性,请随时提出问题或给我发送电子邮件!

安装

composer require jrm2k6/cloudder

对于仍在使用 Laravel 4.2 的人: composer require jrm2k6/cloudder:0.1.* 并检查分支 l4 以获取安装说明。

配置

修改您的 .env 文件,并添加以下来自 Cloudinary 的信息

必需

CLOUDINARY_API_KEY=012345679890123
CLOUDINARY_API_SECRET=foobarfoobarfoob-arfoobarfo
CLOUDINARY_CLOUD_NAME=foobarcorp

可选

CLOUDINARY_BASE_URL
CLOUDINARY_SECURE_URL
CLOUDINARY_API_BASE_URL

Laravel 5.5+ 使用包自动发现,因此不需要您手动添加 ServiceProvider。如果您不使用自动发现,请按照以下步骤操作

在 config/app.php 中添加以下内容

'providers' => array(
  JD\Cloudder\CloudderServiceProvider::class,
);

'aliases' => array(
  'Cloudder' => JD\Cloudder\Facades\Cloudder::class,
);

运行 php artisan vendor:publish --provider="JD\Cloudder\CloudderServiceProvider"

使用方法

upload()

Cloudder::upload($filename, $publicId, array $options, array $tags);

with

  • $filename: 要上传的图片的路径
  • $publicId: 您想在 Cloudinary 上拥有的图片 ID,留空则由 Cloudinary 生成随机 ID。
  • $options: 上传图片的选项,有关更多信息,请参阅 Cloudinary 文档
  • $tags: 图片的标签

返回 CloudinaryWrapper

uploadVideo()

Cloudder::uploadVideo($filename, $publicId, array $options, array $tags);

with

  • $filename: 要上传的视频的路径
  • $publicId: 您想在 Cloudinary 上拥有的视频 ID,留空则由 Cloudinary 生成随机 ID。
  • $options: 上传视频的选项,请参阅 Cloudinary 文档了解详细信息
  • $tags: 图片的标签

返回 CloudinaryWrapper

getPublicId()

Cloudder::getPublicId()

返回最后上传资源的 public id

getResult()

Cloudder::getResult()

返回最后上传资源的操作结果。

show() + secureShow()

Cloudder::show($publicId, array $options)
Cloudder::secureShow($publicId, array $options)

with

  • $publicId: 要显示的资源公钥
  • $options: 上传资源的选项,请参阅 Cloudinary 文档了解详细信息

返回 Cloudinary 上图片的 url(如果使用 secureShow 则为 https url)。

showPrivateUrl()

Cloudder::showPrivateUrl($publicId, $format, array $options)

with

  • $publicId: 要显示的资源公钥
  • $format: 要显示的资源格式('png', 'jpg'...)
  • $options: 上传资源的选项,请参阅 Cloudinary 文档了解详细信息

返回 Cloudinary 上图片的 private url,默认情况下在 1 小时后过期。

rename()

Cloudder::rename($publicId, $toPublicId, array $options)

with

  • $publicId: 要重命名的资源的公钥
  • $toPublicId: 资源的新公钥
  • $options: 上传资源的选项,请参阅 cloudinary 文档了解详细信息

使用 $toPublicId 参数重命名原始图片。

destroyImage() + delete()

Cloudder::destroyImage($publicId, array $options)
Cloudder::delete($publicId, array $options)

with

  • $publicId: 要删除的资源的公钥
  • $options: 删除图片的选项,请参阅 cloudinary 文档了解详细信息

从 Cloudinary 删除图片。

destroyImages()

Cloudder::destroyImages(array $publicIds, array $options)

with

  • $publicIds:要删除的图片的ID数组
  • $options:要删除的图片的选项,请查阅Cloudinary文档了解详细信息

从Cloudinary删除图片。

addTag()

Cloudder::addTag($tag, $publicIds, array $options)

with

  • $tag:要应用的标签
  • $publicIds:要应用标签的图片
  • $options: 上传资源的选项,请参阅 cloudinary 文档了解详细信息

removeTag()

Cloudder::removeTag($tag, $publicIds, array $options)

with

  • $tag:要删除的标签
  • $publicIds:要删除标签的图片
  • $options:您上传的图片的选项,请查阅Cloudinary文档了解详细信息

createArchive()

Cloudder::createArchive(array $options, $archiveName, $mode)

with

  • $options:您存档的选项,例如名称、标签/前缀/公共ID以选择图片
  • $archiveName:您想要为存档提供的名称
  • $mode:'create'或'download'('create'将创建存档并返回包含存档属性的JSON响应,'download'将返回下载的zip文件)

在Cloudinary上创建zip文件。

downloadArchiveUrl()

Cloudder::downloadArchiveUrl(array $options, $archiveName)

with

  • $options:您存档的选项,例如名称、标签/前缀/公共ID以选择图片
  • $archiveName:您想要为存档提供的名称

返回Cloudinary上新建存档的下载URL

运行测试

phpunit

示例

您可以在以下repo中找到一个工作示例:cloudder-l5-example