在PHP中,将JSON字符串转换为CSV格式可以通过以下步骤实现:
json_decode()
函数将JSON字符串解码为PHP数组或对象。fputcsv()
函数将数据写入CSV文件。以下是一个示例代码,展示如何将JSON字符串转换为CSV格式:
<?php
// 示例JSON字符串
$jsonString = '[
{"name": "John", "age": 30, "city": "New York"},
{"name": "Jane", "age": 25, "city": "Los Angeles"},
{"name": "Mike", "age": 35, "city": "Chicago"}
]';
// 解码JSON字符串为PHP数组
$data = json_decode($jsonString, true);
// 打开一个文件句柄用于写入CSV
$csvFile = fopen('output.csv', 'w');
// 写入CSV文件的表头
fputcsv($csvFile, array_keys($data[0]));
// 写入数据行
foreach ($data as $row) {
fputcsv($csvFile, $row);
}
// 关闭文件句柄
fclose($csvFile);
echo "CSV文件已生成:output.csv";
?>
json_decode($jsonString, true)
将JSON字符串解码为关联数组。fopen('output.csv', 'w')
以写入模式打开一个文件句柄。fputcsv($csvFile, array_keys($data[0]))
将数组的键作为CSV文件的表头写入。foreach
循环遍历数组,并将每一行数据写入CSV文件。fclose($csvFile)
关闭文件句柄,确保数据写入文件。生成的output.csv
文件内容如下:
name,age,city
John,30,New York
Jane,25,Los Angeles
Mike,35,Chicago
通过这种方式,你可以轻松地将JSON字符串转换为CSV格式,并保存为文件。