如何使用多个工作表Yii2 ExportMenu导出数据

时间:2018-01-24 08:27:30

标签: php yii2 export yii2-advanced-app

使用Yii2 kartik ExportMenu可以轻松地在一个导出的Excel文件中创建多个工作表。它适用于单个标签,但现在我想在单个csvexcel的表格中导出多个标签中的数据。 这是可能的还是我需要直接使用PHPExcel

echo ExportMenu::widget([
     'dataProvider' => $dataProvider,
     'columns' => $gridColumns,
     'target' => ExportMenu::TARGET_BLANK,
     'dropdownOptions' => [
      'label' => 'Export',
      'class' => 'btn btn-warning', 
      'export' => true,
      'toolbar'=>[
      '{export}',
      '{toggleData}'
      ]          
    ],
     'exportConfig'=>[
     ExportMenu::FORMAT_HTML=>false,
     ExportMenu::FORMAT_TEXT=>false,
     ExportMenu::FORMAT_PDF=>false,
     ExportMenu::FORMAT_EXCEL=>false,
     ],
]);

1 个答案:

答案 0 :(得分:1)

扩展程序仅用于导出客户端上显示的数据。 您需要编写自己的查询/代码以导出大型数据集。

另一种方法是使用yii2-export扩展名,该扩展名使用PHP Excel库导出并直接从dataProvider中读取数据。

但是,通过直接查询通常可以更快地导出非常大的数据集,而不是为了更改其他格式而进行过多的处理。