PHPackages                             cnzaicom/media-selector - 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. cnzaicom/media-selector

ActiveLibrary

cnzaicom/media-selector
=======================

媒体选择器，支持项目根目录媒体文件导入数据库

06JavaScript

Since Apr 2Pushed 5y ago1 watchersCompare

[ Source](https://github.com/cnzaicom/media-selector)[ Packagist](https://packagist.org/packages/cnzaicom/media-selector)[ RSS](/packages/cnzaicom-media-selector/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependenciesVersions (1)Used By (0)

Laravar-admin 媒体资源选择器
=====================

[](#laravar-admin-媒体资源选择器)

[![图片名称](https://camo.githubusercontent.com/6905bc1ecb307a26f7472068037438fd35107c1579885bf54006af7c40d76514/68747470733a2f2f6c61726176656c2d61646d696e2e6f72672f73746f726167652f323032302f30392f32352f4338575a6d724b69364f636c377a59527869614c67624d72464866576d6a556d30437437375537332e706e67)](https://camo.githubusercontent.com/6905bc1ecb307a26f7472068037438fd35107c1579885bf54006af7c40d76514/68747470733a2f2f6c61726176656c2d61646d696e2e6f72672f73746f726167652f323032302f30392f32352f4338575a6d724b69364f636c377a59527869614c67624d72464866576d6a556d30437437375537332e706e67)

基于de-memory/media-selector修改。
=============================

[](#基于de-memorymedia-selector修改)

依赖
--

[](#依赖)

- php | &gt;=7.0.0
- encore/laravel-admin | &gt;=~1.6
- intervention/image | &gt;= ^2.4

// 加入了文件md5检测 重复上传直接返回已经上传的文件

安装
--

[](#安装)

### composer 安装

[](#composer-安装)

```
composer require cnzaicom/media-selector

```

### 发布资源

[](#发布资源)

```
php artisan vendor:publish --provider=Encore\MediaSelector\MediaSelectorServiceProvider

```

### 添加数据库

[](#添加数据库)

```
php artisan migrate --path=vendor/cnzaicom/media-selector/database/migrations

```

### 将根目录下面的文件同步到数据库(可以不执行。如果执行会去掉数据库已有的，根据path字段过滤)

[](#将根目录下面的文件同步到数据库可以不执行如果执行会去掉数据库已有的根据path字段过滤)

```
php artisan media-selector:install

```

更新
--

[](#更新)

```
composer update

// 强制发布静态资源文件
php artisan vendor:publish --tag=media-selector --force

// 清理视图缓存
php artisan view:clear

```

方法使用
----

[](#方法使用)

```
/**
* move:第一个参数上传路径（默认路径upload_files），第二个参数媒体名是否加密（默认false）
*
* type:上传类型，选择类型（模态框上传无限制）
*
*/
$form->mediaSelector('avatar', '头像')->move('user', true)->type('image')->help('只能上传png, jpg, jpeg, bmp, gif, webp, psd, svg, tiff');

/**
* maxFileCount:上传数量，选择数量（模态框上传无限制）
*
* sortable:开启推动排序
*
*/
$form->mediaSelector('avatar1', '头像1')->maxFileCount(3)->sortable()->help('最多上传或选择三个媒体文件，可推动排序');

```

参数说明
----

[](#参数说明)

```
/*
|--------------------------------------------------------------------------
| 媒体选择数量。默认1
|--------------------------------------------------------------------------
*/
maxFileCount(int)

/*
|--------------------------------------------------------------------------
| 媒体上传路径，媒体名称是否加密
|--------------------------------------------------------------------------
| 第一个参数，媒体上传路径。默认upload_files
| 第二个参数，媒体名称是否加密。默认true
|
| 注意：第二个参数如果是false，上传文件时，跟已上传的文件名称相同，会覆盖已上传的文件
|
*/
move(string, boolean)

/*
|--------------------------------------------------------------------------
| 媒体选择类型。默认blend
|--------------------------------------------------------------------------
| blend            混合选择
| image            图片选择
| video            视频选择
| audio            音频选择
| powerpoint       文稿选择
| code             代码文件选择
| zip              压缩包选择
| text             文本选择
| other            其他选择
*/
type(string)

/*
|--------------------------------------------------------------------------
| 开启推动排序。
|--------------------------------------------------------------------------
*/
sortable()

```

说明
--

[](#说明)

```
数据保存处理
1、可以用官网文档中的，模型表单回调
https://laravel-admin.org/docs/zh/1.x/model-form-callback

2、可以用laravel模型处理（模型修改器）
https://learnku.com/docs/laravel/5.8/eloquent-mutators/3934#defining-a-mutator

```

若要回滚最后一次迁移， 以下命令。 此命令将回滚最后一次 “迁移” 的操作，只回滚该推展“迁移”。(谨慎操作)
-------------------------------------------------------

[](#若要回滚最后一次迁移-以下命令-此命令将回滚最后一次-迁移-的操作只回滚该推展迁移谨慎操作)

```
php artisan migrate:rollback --path=vendor/cnzaicom/media-selector/database/migrations

```

###  Health Score

16

—

LowBetter than 5% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity4

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity30

Early-stage or recently created project

 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.

### Community

Maintainers

![](https://www.gravatar.com/avatar/c381a38417b9912985f717712352e4805aeca4f23e508b4c3137d63a67fe4f7a?d=identicon)[cnzaicom](/maintainers/cnzaicom)

---

Top Contributors

[![cnzaicom](https://avatars.githubusercontent.com/u/19220423?v=4)](https://github.com/cnzaicom "cnzaicom (7 commits)")

### Embed Badge

![Health badge](/badges/cnzaicom-media-selector/health.svg)

```
[![Health](https://phpackages.com/badges/cnzaicom-media-selector/health.svg)](https://phpackages.com/packages/cnzaicom-media-selector)
```

PHPackages © 2026

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