joshuagibeonm / cloudder
Laravel 的 Cloudinary API 封装
0.7.1
2020-09-19 16:05 UTC
Requires
- php: >=5.3.0
- cloudinary/cloudinary_php: >=1.1
Requires (Dev)
- laravel/framework: >=5.0
- mockery/mockery: 0.9.*
- phpunit/phpunit: 4.*
README
如果您在发布时将其分支为您的,那么在 https://github.com/teepluss/laravel4-cloudinary 处为原始作者致谢可能是个不错的选择。
最初从 https://github.com/teepluss/laravel4-cloudinary 分支,然后从 https://github.com/jrm2k6/cloudder 分支。
安装
composer require joshuagibeonm/cloudder
配置
修改您的 .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, $isLarge);
with
$filename
: 要上传的图像的路径$publicId
: 您希望在 Cloudinary 上拥有的图像 ID,留空则由 Cloudinary 生成随机 ID。$options
: 上传图像的选项,请参阅 Cloudinary 文档 了解更多信息$tags
: 图像的标签$isLarge
: 布尔值,表示是否需要使用 upload_large 或 upload
返回 CloudinaryWrapper
。
uploadVideo()
Cloudder::uploadVideo($filename, $publicId, array $options, array $tags, bool $isLarge);
with
$filename
: 要上传的视频的路径$publicId
: 您希望在 Cloudinary 上拥有的视频 ID,留空则由 Cloudinary 生成随机 ID。$options
: 上传视频的选项,请参阅 Cloudinary 文档了解更多信息$tags
: 图像的标签$isLarge
: 布尔值,表示是否需要使用 upload_large 或 upload
返回 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
: 资源的新 publicId$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
: 标识要删除的图片的 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上新建存档的下载链接。
运行测试
phpunit