Convertire JSON in CSV con PHP
Sia il JSON che il CSV sono formati standard usati praticamente ovunque.
Da un web service ricevo i dati in JSON, ed ho bisogno di convertirli in CSV.
Il tutto in un'applicazione scritta in PHP.
Vediamo un esempio, partendo da dati semplici:
$array = json_decode('[{"nome":"Gino","eta":28},{"nome":"Federica","eta":21},
{"nome":"Michele","eta":24}]', TRUE);
$csvFile = 'file.csv';
function arrayToCsv($array, $csvFile) {
$f = fopen($csvFile, 'w');
foreach ($array as $row) {
fputcsv($f, $row, ';');
}
fclose($f);
}
La prima cosa da ricordare è di impostare il TRUE nella funzione json_decode.
Nella funzione sotto, passiamo due parametri (l'array dei dati e il file da salvare).
La "magia" è nella funzione fputcsv, che va a spezzare automaticamente il record, dividendoli con il separatore scelto.
Se lo omettete, la funzione ne mette uno di default (la virgola).
Enjoy!
php json csv json_decode fputcsv
Commentami!