genrisol/yii2-csv-exporter

Active Query (Yii2)的CSV导出扩展

安装次数: 11

依赖者: 0

建议者: 0

安全: 0

星标: 0

关注者: 1

分支: 0

开放问题: 0

类型:yii2-extension

dev-master 2020-10-27 12:13 UTC

This package is auto-updated.

Last update: 2024-09-27 20:28:17 UTC


README

ActiveQuery的简单CSV导出器

CSV导出器

Active Query (Yii2)的CSV扩展

安装

安装此扩展的首选方式是通过Composer

您可以选择运行

php composer.phar require --prefer-dist genrisol/yii2-csv-exporter "*"

或将

"genrisol/yii2-csv-exporter": "*"

添加到您的composer.json文件的require部分。

使用方法

一旦扩展被安装,只需在您的代码中按照以下示例使用即可

$query = \app\models\History::find()
    ->addSelect('history.*')
     ->with([
        'user',
        'customer',
        ...
     ]);

$columns = [
    ['label' => 'Date&Time', 'value' => 'ins_ts'],
    ['label' => 'Type', 'value' => 'object'],
    ['label' => 'Event', 'value' => 'eventText'],
    // relation used example
    ['label' => 'Event', 'nested' => 'user', 'value' => 'username'],
    // closure example
    ['label' => 'Message', 'value' => function ($model){
            return $model->getBodyByModel();
        }
    ],
];

(new \genrisol\export\CsvExport())->prepare($query, $columns)->run('histiory_'.time().'.csv');

or

set Yii config for components like this

'csv' => [
    'class' => '\genrisol\export\CsvExport',
]

and then can use it this way
 Yii::$app->cvs->prepare($query, $columns)->run('histiory_'.time().'.csv');