mixpo/form-data-exporter
最新稳定版本:v2.1.5
Composer 安装命令:
composer require mixpo/form-data-exporter
包简介
Simple Export Db -> CSV library
README 文档
README
A somewhat specific tool meant to export to CSV, a JSON data column for all rows in a SQL result set.
Status
Install
composer install
phpunit
Usage
<?php $exporter = new FormExporter( 'dsn', // <- PDO DSN string including credentials 'tableName', // <- the table the you wish to export data from 'data', // <- the name of the 'data' column (column that hold the JSON form data) ["client_id" => "12345", "campaign" => "widget-2015"], // <- criteria used to build an AND'ed WHERE clause $logger // <- Psr\Log\LoggerInterface );
You then set the writer engine (file system and S3 are currently supported and run the export
$exporter->setExporterEngine( new FileSystemExporterEngine( 'file:///var/data/csv/leadgen99.csv', // <- full path to the output CSV in <protocol>://<path> format s3://<bucket>/<object-path> is also supported $logger, // <- Psr\Log\LoggerInterface $randomizeFileName = true ) ); $outputCsvFilePath = $exporter->run();
NOTE In the example above the $outputCsvFilePath will have a random seed in it. For instance with
file:///var/data/csv/leadgen99.csv sent into the ExporterEngine constructor, $outputCsvFilePath will be something like: /var/data/csv/leadgen99-55358afdeefa5.csv
To turn off this behavior call set $randomizeFileName = false
Rows with Issues
After calling $exporter->run(), you can call getIssues() which will return an array of any rows that had parse
issues and will not be in the CSV output.
<?php $exporter->run(); $issues = $exporter->getIssues(); /** * $issues will be an empty array if there were no issues, but if there were it will look something like this. * [ * [ * "message" => "Expected data field of name: 'form_data', not found for this row", * "row" => ["id" => 2, * "identifier" => "client-xyz", * "tag" => "widget-1-campaign", * "version" => 1, * "created" => "2015-04-16 21:50:39"] * ], * ... * ] **/
统计信息
- 总下载量: 1.4k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2015-04-21