如何在PHP中将 JSON 文件转换为 CSV?
在本文中,我们将了解如何使用PHP将 JSON 数据转换为 CSV 文件。
JSON(JavaScript Object Notation)是一种类似于字典的表示法,可用于结构化数据。它以扩展名 .json 存储,例如 – geeksforgeeks.json
另一方面,CSV(或逗号分隔值)文件以表格格式表示数据,具有多行和多列。 CSV 文件的一个示例可以是 Excel 电子表格。这些文件的扩展名为 .csv,例如 – geeksforgeeks.csv。
要求: XAMPP 服务器
JSON的结构:
[{
"data1": "value1",
"data2": "value2",
...,
"data n": "value n"
}]
例子:
[{
"student": "sravan kumar",
"age": 22,
"subject": "java"
}]
使用方法:
- json_decode() 方法:该函数用于将 JSON 对象解码或转换为PHP对象。
句法:
json_decode( string, assoc ) Example: $jsondata = '[{ "student": "sravan kumar", "age": 22, "subject": "java" }, { "student": "ojaswi", "age": 21, "subject": "java" }, { "student": "rohith", "age": 22, "subject": "dbms" }, { "student": "bobby", "age": 22, "subject": "sql" }]'; // Decode the json data and convert it // into an associative array $jsonans = json_decode($jsondata, true);
- fopen() 方法:用于打开文件。
句法:
fopen( filename, file_mode )
例子:
// File pointer in writable mode $file_pointer = fopen($csv, 'w');
- fclose() 方法:用于关闭文件。
句法:
fclose( $file_pointer );
例子:
fclose( $file_pointer );
- fputcsv() 方法:用于将数据放入 CSV 文件。
句法:
fputcsv( file, fields )
例子:
fputcsv( $file_pointer, $i );
运行步骤:
- 启动 XAMPP 服务器
- 打开记事本,在json 中输入以下代码。 PHP并将其放在htdocs文件夹下。
PHP代码:
PHP
geeks.csv $csv = 'geeks.csv'; // File pointer in writable mode $file_pointer = fopen($csv, 'w'); // Traverse through the associative // array using for each loop foreach($jsonans as $i){ // Write the data to the CSV file fputcsv($file_pointer, $i); } // Close the file pointer. fclose($file_pointer); ?>
输出:输入localhost/json。在您的浏览器中PHP 。您可以看到 CSV 文件已创建,文件名为geeks.csv