jormin/qiniu 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

jormin/qiniu

Composer 安装命令:

composer require jormin/qiniu

包简介

七牛

关键字:

README 文档

README

基于七牛官方SDK的扩展包

安装

$ composer require jormin/qiniu -vvv

通用响应

参数 类型 是否必须 描述
success bool false:操作失败 true:操作成功
message string 结果说明
data array 返回数据

使用

生成七牛对象

$accessKey = 'your access key';
$secretKey = 'your secret key';
$qiniu = new \Jormin\Qiniu\Qiniu($accessKey, $secretKey);

空间域名相关功能

// 获取空间列表
$qiniu->buckets();

// 获取指定空间的域名
$qiniu->domains($bucket);

// 创建空间 $region:区域,默认滑动  z0 华东 z1 华北   z2 华南   na0 北美  as0 东南亚
$qiniu->createBucket($bucket, [$region='z0']);

// 删除空间
$qiniu->dropBucket($bucket);

// 设置空间访问权限 $private:权限 0 公开 1 私有
$qiniu->setBucketAuth($bucket, $private);

文件操作相关功能

统计指定空间的文件总数功能慎用!!!!!官方并未提供获取总数的方法,该方法原理是分批次读取空间文件列表,直到没有剩余文件,由于读取列表接口限制单次最大数量为1000,所以空间文件数量巨大的情况下该方法效率很差!

// 统计指定空间的文件总数
$qiniu->count($bucket);

// 读取指定空间的文件列表
$qiniu->listFiles($bucket, [$limit=1000, $prefix='', $marker='', $delimiter='']);

// 读取文件信息
$qiniu->stat($bucket, $key);

// 批量读取文件信息 $keys:数组
$qiniu->batchStat($bucket, $keys);

// 获取上传文件Token
$qiniu->uploadToken($bucket, [$key = null, $expires = 3600, $policy = null, $strictPolicy = true]);

// 上传文件(默认方法)
$qiniu->upload($bucket, $filePath, [$key = null]);

// 带Token上传文件
$qiniu->uploadWithToken($uploadToken, $filePath, [$key = null]);

// 移动文件
$qiniu->move($srcBucket, $srcKey, $destBucket, $destKey, [$force=true]);

// 批量移动文件 $keys:数组 $prefix:目标文件名前缀 $suffix:目标文件名后缀
$qiniu->batchMove($srcBucket, $keys, $destBucket, [$prefix='', $suffix='', $force=true]);

// 复制文件
$qiniu->copy($srcBucket, $srcKey, $destBucket, $destKey, [$force=true]);

// 批量复制文件 $keys:数组 $prefix:目标文件名前缀 $suffix:目标文件名后缀
$qiniu->batchCopy($srcBucket, $keys, $destBucket, [$prefix='', $suffix='', $force=true]);

// 修改文件存储类型 $type 0:标准存储;1:低频存储
$qiniu->changeType($bucket, $key, $type);

// 批量修改文件存储类型 $type 0:标准存储;1:低频存储 $keys:数组
$qiniu->batchChangeType($bucket, $keys, $type);

// 修改文件状态 $status 0:启用;1:禁用
$qiniu->changeStatus($bucket, $key, $status);

// 修改文件MIME
$qiniu->changeMime($bucket, $key, $mime);

// 批量修改文件MIME
$qiniu->batchChangeMime($bucket, $keys, $mime);

// 删除文件
$qiniu->delete($bucket, $key);

// 批量删除文件 $keys:数组
$qiniu->batchDelete($bucket, $keys);

// 指定天数后删除文件 $days:天数,0表示永久保存
$qiniu->deleteAfterDays($bucket, $key, $days);

// 指定天数后批量删除文件 $keys:数组 $days:天数,0表示永久保存
$qiniu->batchDeleteAfterDays($bucket, $keys, $days);

// 从指定Url抓取资源
$qiniu->fetch($bucket, $url, [$key = null]);

CDN相关功能

// 镜像资源更新
$qiniu->prefetch($bucket, $key);

// 刷新文件或目录 $urls:数组 $dirs:数组
$qiniu->refresh($urls, $dirs);

// 文件预取 $urls:数组
$qiniu->prefetchUrls($urls);

参考项目

  1. qiniu/php-sdk

License

The MIT License (MIT). Please see License File for more information.

jormin/qiniu 适用场景与选型建议

jormin/qiniu 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 139 次下载、GitHub Stars 达 0, 最近一次更新时间为 2018 年 07 月 03 日, 在 PHP 生态内属于活跃度较高的组件。

它主要适用于以下技术方向: 「Jormin」 「七牛」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。

我们在过去多个企业项目中使用过 jormin/qiniu 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 jormin/qiniu 我们能提供哪些服务?
定制开发 / 二次开发

基于 jormin/qiniu 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 139
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 3
  • 依赖项目数: 1
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2018-07-03