PHPackages                             bengbengsoft/beng-tools-upload - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. bengbengsoft/beng-tools-upload

ActiveYii2-extension

bengbengsoft/beng-tools-upload
==============================

bengbeng tools for Yii2

0.9.6(7y ago)081MITPHP

Since Apr 23Pushed 7y ago1 watchersCompare

[ Source](https://github.com/hahastein/beng-tools-upload)[ Packagist](https://packagist.org/packages/bengbengsoft/beng-tools-upload)[ RSS](/packages/bengbengsoft-beng-tools-upload/feed)WikiDiscussions master Synced 2d ago

READMEChangelogDependencies (4)Versions (7)Used By (1)

\#BengBeng Tools - Upload组件使用说明
===============================

[](#bengbeng-tools---upload组件使用说明)

- 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 = ''
    - 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' =&gt; 'date', 'param' =&gt; '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-&gt;save();
    - 调用错误信息： > $upload-&gt;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());
        }

        ```

###  Health Score

24

—

LowBetter than 32% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity4

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity54

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~0 days

Total

6

Last Release

2577d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/6553ef8ed4bff7ddbeeddf2cec0e6f9a4a4952d987300c7353bdded0b3095d7a?d=identicon)[hahastein](/maintainers/hahastein)

---

Top Contributors

[![hahastein](https://avatars.githubusercontent.com/u/10934780?v=4)](https://github.com/hahastein "hahastein (17 commits)")

---

Tags

yii2toolsbengbeng

### Embed Badge

![Health badge](/badges/bengbengsoft-beng-tools-upload/health.svg)

```
[![Health](https://phpackages.com/badges/bengbengsoft-beng-tools-upload/health.svg)](https://phpackages.com/packages/bengbengsoft-beng-tools-upload)
```

###  Alternatives

[maxmirazh33/yii2-uploadable-cropable-image

Yii2 extension for upload and crop images

1020.8k](/packages/maxmirazh33-yii2-uploadable-cropable-image)[liyunfang/yii2-upload-behavior

Upload behavior for Yii 2

161.7k](/packages/liyunfang-yii2-upload-behavior)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
