bengbengsoft/beng-tools-upload
Composer 安装命令:
composer require bengbengsoft/beng-tools-upload
包简介
bengbeng tools for Yii2
README 文档
README
-
Composer
composer require bengbengsoft/beng-tools-upload
-
命名空间
use bengbeng\tools\upload\UploadHandle;
-
初始化
$update = new UploadHandle([ 'driver' => UploadHandle::UPLOAD_TYPE_LOCAL, 'driverConfig' => [ 'rootPath' => \Yii::getAlias('@res'), 'savePath' => 'img' ] ]); -
枚举说明
UploadHandle::UPLOAD_TYPE_LOCAL 为本地图片上传
UploadHandle::UPLOAD_TYPE_UPYUN 为又拍云上传
-
配置文件说明
-
mimes (array|string) 验证上传文件的mime类型,一个可以使用字符串或者数组形式,多个请用数组形式
mimes = 'application' 或者 mimes = ['application', 'image']
-
exts (array) 验证上传文件的后缀名
exts = ['jpg', 'png']
-
maxSize (int) 限制的最大文件大小 (未实现)
-
hash (bool) (未实现)
-
domain (string) 返回拼接时的域名,不填写则按根目录级别返回
domain = 'http://img.52beng.com'
-
driver (string) 上传驱动类型(默认提供两种,参看枚举说明)(支持自定义方式,请填写自己创建的命名空间+类名)
默认方式: UploadHandle::UPLOAD_TYPE_LOCAL 或者 UploadHandle::UPLOAD_TYPE_UPYUN
自定义方式:\bengbeng\framework\components\handles\UploadHandle
-
driverConfig (array) 驱动配置
- rootPath (string) 上传的根目录 (当driver方式不为UPLOAD_TYPE_LOCAL时,此方法有效)
- savePath (string) 上传的存储路径
user 或者 user/store
- folderNameMode (array) 文件夹的命名方式(设置后则在savePath后在创建folderNameMode的方式生成的文件夹)
使用后,则会在savePath后跟上这个参数生成的文件夹
['fun' => 'date', 'param' => 'Ymd']使用后效果
user/store/20190422如果想改变其结构,调整参数即可,例如:['fun' => 'date', 'param' => 'Y/m/d'],修改后为:
user/store/2019/04/22 - fileNameMode (string) 文件的命名方式,默认为 md5(uniqid(rand()))
- fileExt (string) 文件后缀名配置,默认为 '' (空则表示使用原有后缀名)
- replace (bool) 是否开启重名自动替换,默认为false
- thumbnail (array) 缩略图配置项,默认为false (以下设置项都是单一的,设置一个,其他两个无效)
- zoom 按缩放比例
- width 按宽度自适应
- height 按高度自适应
- sdkConfig (array) 第三方平台服务配置 (当driver方式不为UPLOAD_TYPE_LOCAL时,此方法有效。配置按照第三方平台提供的服务器配置进行)
以又拍云为例,此参数下配置为:
[ 'service' => '服务名', 'user' => '操作员名', 'pwd' => '密码' ]
-
-
调用及错误说明
- 调用上传:(返回 True 和 False)
$upload->save();
- 调用错误信息:
$upload->getError();
- 调用Demo
$update = new UploadHandle([ 'mimes' => ['app', 'ccc'], 'driver' => UploadHandle::UPLOAD_TYPE_LOCAL, 'driverConfig' => [ 'rootPath' => \Yii::getAlias('@res'), 'savePath' => 'img' ] ]); if($result = $update->save()){ \Yii::$app->Beng->outHtml('上传成功'); }else{ \Yii::$app->Beng->outHtml($update->getError()); }
- 调用上传:(返回 True 和 False)
bengbengsoft/beng-tools-upload 适用场景与选型建议
bengbengsoft/beng-tools-upload 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 8 次下载、GitHub Stars 达 0, 最近一次更新时间为 2019 年 04 月 22 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「tools」 「yii2」 「bengbeng」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 bengbengsoft/beng-tools-upload 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 bengbengsoft/beng-tools-upload 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 bengbengsoft/beng-tools-upload 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
A set of useful PHP classes.
A Laravel package to retrieve data from Google Search Console
A custom URL rule class for Yii 2 which allows to create translated URL rules
GHT D-Tools Bundle
Allow KoolReport to use twig template engine to render view
Asynchronous MQTT client built on React
统计信息
- 总下载量: 8
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 1
- 依赖项目数: 1
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2019-04-22