mgrabow1 / yii2-export
一个用于以各种格式(例如 excel、html、pdf、csv 等)导出服务器/数据库数据的库
Requires
- kartik-v/yii2-dynagrid: >=1.4.5
- kartik-v/yii2-mpdf: >=1.0
- phpoffice/phpspreadsheet: >=1.0
README
我修改的 yii2-export 包增加了更改输出 txt 和 csv 文件编码的可能性(通过使用 "encoding" 选项和 iconv)。
创建此包是为了简单生成与 Excel 兼容的 CSV 文件(例如,使用 WINDOWS-1250 编码)。
yii2-export
使用 PhpSpreadsheet 库导出服务器/数据库数据到各种格式(例如 excel、html、pdf、csv 等)的库。小部件允许您配置数据提供者和列,就像 yii\grid\GridView 一样。然而,它只是以按钮下拉菜单的形式显示导出操作,以便嵌入到您的 GridView 或其他组件中。
此外,从 v1.2.0 版本开始,该扩展还显示了一个方便的网格列选择器,用于控制导出的列。列选择器提供的功能包括:
- 显示列选择器下拉列表,允许选择要导出的列。
- 新的
container
属性允许您将导出菜单和列选择器下拉菜单分组。 - 新的
template
属性用于操作菜单、列选择器或按钮组中的附加按钮的显示。 - 通过
columnSelectorOptions
配置列选择器下拉按钮。 - 自动生成列选择器中的列标签。但是,您可以通过设置
columnSelector
属性来覆盖每个列键的显示列标签。 - 通过
selectedColumns
预选列(您必须设置选择的列键)。 - 通过
disabledColumns
在列选择器中禁用列(您必须设置禁用的列键)。 - 通过
hiddenColumns
在列选择器中隐藏列(您必须设置隐藏的列键)。 - 通过
noExportColumns
从导出和列选择器中隐藏列(您必须设置不导出的列键)。 - 通过
showColumnSelector
属性切换列选择器的显示。 - 只有当
asDropdown
设置为true
时,列选择器才会显示。
该扩展提供了可定制的用户界面,用于高级情况,使用视图模板。
exportColumnsView
允许您为渲染列选择器下拉菜单设置自定义视图文件。afterSaveView
允许您为配置在服务器上保存导出文件时设置自己的保存后视图文件。
演示
版本更改
注意:有关各个版本的详细更改,请参阅 变更日志。
安装
安装此扩展的首选方法是使用 composer。
注意:请阅读关于设置应用composer.json中
minimum-stability
设置的网络技巧/wiki。
运行以下命令之一:
$ php composer.phar require kartik-v/yii2-export "@dev"
或将以下内容添加到composer.json
文件的require
部分。
"kartik-v/yii2-export": "@dev"
到您的composer.json
文件的require
部分。
注意:您必须运行
composer update
才能获取最新的稳定依赖项,如kartik-v/yii2-krajee-base
。
先决条件
yii2-export
扩展依赖于yii2-grid
扩展模块。为了开始使用yii2-export
,您需要确保在应用模块配置文件中设置gridview
模块。例如
'modules' => [ 'gridview' => [ 'class' => 'kartik\grid\Module', // other module settings ] ]
使用方法
ExportMenu
use kartik\export\ExportMenu; $gridColumns = [ ['class' => 'yii\grid\SerialColumn'], 'id', 'name', 'color', 'publish_date', 'status', ['class' => 'yii\grid\ActionColumn'], ]; // Renders a export dropdown menu echo ExportMenu::widget([ 'dataProvider' => $dataProvider, 'columns' => $gridColumns ]); // You can choose to render your own GridView separately echo \kartik\grid\GridView::widget([ 'dataProvider' => $dataProvider, 'filterModel' => $searchModel, 'columns' => $gridColumns ]);
贡献者
代码贡献者
本项目之所以存在,多亏了所有贡献者。[贡献].
财务贡献者
成为财务贡献者并帮助我们维持社区。[贡献]
个人
组织
用您的组织支持此项目。您的标志将在这里显示,并带有链接到您的网站。[贡献]
许可协议
yii2-export在BSD-3-Clause许可下发布。请参阅附带的LICENSE.md
以获取详细信息。