Yii2框架GridView自带导出功能最佳实践

 1. 导出excel的实现方法

(1)使用phpexcel封装工具类导出excel

(2)使用爬虫爬取页面再处理封装工具类导出excel

(3)使用页面渲染后处理html添加头部信息生成excel文件的js导出

(4)使用GridView视图组件自带的导出功能

2.代码实现(使用GridView视图组件自带的导出功能)

<?= kartik\grid\GridView::widget([
    'tableOptions' => ['class' => 'table table-striped', 'style'=>'font-size:12px;'],
    'layout' => "<div class=\"pull-left div_title\" >库存盘点清单</div><div class=\"pull-right\">{toolbar}</div><div class=\"clearfix\"></div>{items}",
    'export'=>[
        'label'=>'导出',
        'target'=>kartik\grid\GridView::TARGET_BLANK,
    ],
    'exportConfig'=>[
        \kartik\grid\GridView::EXCEL => [
            'label' => Yii::t('app', '导出Excel'),
            'icon' =>'file-excel-o',
            'iconOptions' => ['class' => 'text-success'],
            'showHeader' => true,
            'showPageSummary' => true,
            'showFooter' => true,
            'showCaption' => true,
            'filename' => Yii::t('app', '库存盘点清单'),
            'alertMsg' => Yii::t('app', '将生成并下载Excel文件'),
            'options' => ['title' => Yii::t('app', 'Microsoft Excel 95+')],
            'mime' => 'application/vnd.ms-excel',
            'config' => [
                'worksheet' => Yii::t('app', '库存盘点清单'),
                'cssFile' => ''
            ]
        ],
    ],
    'striped'=>false,
    'hover'=>true,
    'showHeader'=>true,
    'showFooter'=>false,
    'showPageSummary' => false,
    'showOnEmpty'=>true,
    'emptyText'=>'当前没有数据!',
    'emptyTextOptions'=>['style'=>'color:red;font-weight:bold;text-align:center;'],
    'dataProvider' => $dataProvider,
    'columns' => $columns,
]); ?>

猜你喜欢

转载自www.cnblogs.com/liuzhiqaingxyz/p/9495005.html
今日推荐