PHPackages                             fengwuyan/file-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. [File &amp; Storage](/categories/file-storage)
4. /
5. fengwuyan/file-selector

ActiveLibrary[File &amp; Storage](/categories/file-storage)

fengwuyan/file-selector
=======================

laravel-admin多媒体上传组件

1.0.1(5y ago)06MITJavaScriptPHP &gt;=7.0.0

Since Jun 23Pushed 5y ago1 watchersCompare

[ Source](https://github.com/wxteamvc/file-selector)[ Packagist](https://packagist.org/packages/fengwuyan/file-selector)[ RSS](/packages/fengwuyan-file-selector/feed)WikiDiscussions master Synced 3w ago

READMEChangelogDependencies (1)Versions (2)Used By (0)

laravel-admin extension
=======================

[](#laravel-admin-extension)

依赖
--

[](#依赖)

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

安装
--

[](#安装)

1.拷贝组件到APP/Admin/Extensions目录下,如果目录不存在则新建

2.打开你的项目中composer.json文件，在加入下面的配置

```
"repositories": [
    {
        "type": "path",
        "url": "app/Admin/Extensions/fengwuyan/file-selector"
    }
]

```

3. 然后运行 `   composer require fengwuyan/file-selector`

### 发布资源

[](#发布资源)

```
php artisan vendor:publish --provider=Encore\FileSelector\FileSelectorServiceProvider

```

### 添加数据库

[](#添加数据库)

```
php artisan migrate --path=vendor/fengwuyan/file-selector/database/migrations

```

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

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

```
php artisan file-selector:install

```

更新
--

[](#更新)

```

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

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

```

方法使用
----

[](#方法使用)

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

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

/**
* setModule方法限定模块名
*
* 可选资源列表只会显示default(公共)和对应模块的资源
* 上传文件会默认归属到指定模块,其他模块不可见
*
*/
$form->fileSelector('avatar2', '头像2')->setModule('模块名');

```

参数说明
----

[](#参数说明)

```
/*
|--------------------------------------------------------------------------
| 媒体选择数量。默认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

```

###  Health Score

21

—

LowBetter than 18% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity4

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity47

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

Unknown

Total

1

Last Release

1836d ago

### Community

Maintainers

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

---

Top Contributors

[![wxteamvc](https://avatars.githubusercontent.com/u/30995161?v=4)](https://github.com/wxteamvc "wxteamvc (2 commits)")

---

Tags

extensionlaravel-admin

### Embed Badge

![Health badge](/badges/fengwuyan-file-selector/health.svg)

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

###  Alternatives

[dianwoung/large-file-upload

An extension of laravel-admin for uploading large files

7748.0k2](/packages/dianwoung-large-file-upload)[catlane/chunk-file-upload

文件上传小扩展，可支持大文件分块分片上传到七牛云or本地，优化您上传大文件的苦恼

284.9k](/packages/catlane-chunk-file-upload)[jxlwqq/file-manager

file manager for laravel-admin

1115.8k](/packages/jxlwqq-file-manager)[laravel-admin-ext/file-browser

A file browser for laravel-admin

153.0k](/packages/laravel-admin-ext-file-browser)

PHPackages © 2026

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