jrm2k6/cloudder

此包已被弃用且不再维护。未建议替代包。

Cloudinary API 的 Laravel 封装

0.7.0 2021-02-04 04:53 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,将其留为 null 以让 Cloudinary 生成随机 ID。
  • $options: 上传图片的选项,查看 Cloudinary 文档 了解更多信息
  • $tags: 图片的标签

返回 CloudinaryWrapper

uploadVideo()

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

with

  • $filename: 要上传的视频的路径
  • $publicId: 您希望在 Cloudinary 上拥有的视频 ID,将其留为 null 以让 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: 要显示的资源的public id
  • $options: 您上传资源的选项,请查阅Cloudinary文档以了解更多信息

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

showPrivateUrl()

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

with

  • $publicId: 要显示的资源的public id
  • $format: 您想要显示的资源格式('png', 'jpg'...)
  • $options: 您上传资源的选项,请查阅Cloudinary文档以了解更多信息

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

rename()

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

with

  • $publicId: 要重命名的资源的publicId
  • $toPublicId: 资源的新public id
  • $options: 您上传资源的选项,请查阅cloudinary文档以了解更多信息

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

destroyImage() + delete()

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

with

  • $publicId: 要删除的资源的publicId
  • $options: 要删除的图像的选项,请查阅cloudinary文档以了解更多信息

从Cloudinary中删除图片。

destroyImages()

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

with

  • $publicIds: 标识要删除的图片的ids数组
  • $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: 您存档的选项,例如名称、标签/前缀/public ids以选择图片
  • $archiveName: 您想要给您的存档起的名称
  • $mode: 'create'或'download'('create'将创建存档并返回包含存档属性的JSON响应,'download'将返回下载的zip文件)

在Cloudinary上创建zip文件。

downloadArchiveUrl()

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

with

  • $options: 您存档的选项,例如名称、标签/前缀/public ids以选择图片
  • $archiveName: 您想要给您的存档起的名称

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

运行测试

phpunit

示例

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