pearl/csv-json-converter

使用PHP将CSV转换为JSON,以及将JSON转换为CSV文件格式

1.0 2018-03-13 14:16 UTC

This package is auto-updated.

Last update: 2024-09-18 02:54:30 UTC


README

Build Status

使用PHP将CSV转换为JSON以及将JSON转换为CSV。

安装

composer require pearl/csv-json-converter

如何使用?

JSON转CSV

示例JSON数据
$jsonString = '[{
    "name": "Half Girlfriend",
    "author": "Chetan Bhagat",
    "publisher": "Rupa Publications",
    "language": "en"
},
{
    "name": "My Journey: Transforming Dreams into Actions",
    "author": "A.P.J. Abdul Kalam",
    "publisher": "Rupa Publications",
    "language": "en"
}]';
use Pearl\CsvJsonConverter\Type\JsonToCsv;	
数据加载
  • 接受数组或JSON值。
  • 可选的自定义输出头。如果不传递,则默认头将被考虑。
$jsonToCsv = new JsonToCsv($jsonString, ['headers' => ["productName", "author", "publisher", "lang"]]);

或者从文件加载JSON数据。

$jsonToCsv->load(__Dir__ . '/data/products.json');
数据转换结果选项
<!-- Convert and save the result to specificed path -->
$jsonToCsv->convertAndSave(__Dir__ . '/output');

<!-- Convert and force download the file in browser-->
$jsonToCsv->convertAndDownload(__Dir__ . '/output');

<!-- Convert and get data-->
$jsonToCsv->convert();

输出

CSV转JSON

use Pearl\CsvJsonConverter\Type\CsvToJson;

加载CSV数据。

$csvToJson = new CsvToJson($csvString, ['bitmask' => 'JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE|JSON_UNESCAPED_SLASHES']);

或从文件加载CSV数据。

$csvToJson->load(__Dir__ . '/data/products.csv');
数据转换结果选项
<!-- Convert and save to specificed path -->
$csvToJson->convertAndSave(__Dir__ . '/output');

<!-- Convert and force download the file-->
$csvToJson->convertAndDownload(__Dir__ . '/output');

<!-- Convert and get data-->
$csvToJson->convert();

示例CSV

输出

  [{
  		"name": "Half Girlfriend",
  		"author": "Chetan Bhagat",
  		"publisher": "Rupa Publications",
  		"language": "en"
  	},
  	{
  		"name": "My Journey: Transforming Dreams into Actions",
  		"author": "A.P.J. Abdul Kalam",
  		"publisher": "Rupa Publications",
  		"language": "en"
  	}
  ]