我正在使用 PHP 并將 JSON 數(shù)據(jù)轉(zhuǎn)換為 CSV 格式,然后讀取相同的 CSV 文件以進(jìn)行進(jìn)一步處理。下面是我將 JSON 數(shù)據(jù)轉(zhuǎn)換為 CSV 格式的代碼。function LoadDataFromFile($file){$json = file_get_contents($file);$array = json_decode($json, true);$f = fopen('out.csv', 'w');$firstLineKeys = false;$keys = array();//first collect keysforeach($array as $line){ foreach($line as $key => $value){ if(!in_array($key, $keys)) $keys[] = $key; }}$keyString = implode(",", $keys);fwrite($f, "$keyString\n");foreach ($array as $line){ $outputArray = array(); foreach($keys as $key){ if(array_key_exists($key, $line)){ $outputArray[] = str_replace(',', '', $line[$key]);; } else { $outputArray[] = ""; } } $outputString = implode(",", $outputArray); fwrite($f, "$outputString\n");}fclose($f);}正如我們所看到的,我正在將數(shù)據(jù)寫入“out.csv”文件,稍后我正在讀取相同的 CSV 文件并將相同文件的值/全部?jī)?nèi)容逐行分配給 $array 變量,如下所示.$array = explode("\n", file_get_contents('out.csv'));現(xiàn)在,我想直接將 csv 內(nèi)容的值分配給 $array 變量,而不使用中間的“out.csv”文件。想知道在將 JSON 數(shù)據(jù)轉(zhuǎn)換為 CSV 格式時(shí)應(yīng)該使用什么數(shù)據(jù)結(jié)構(gòu),以及“LoadDataFromFile”方法所需的可能代碼更改?
如何在不使用 csv 文件的情況下將 JSON 數(shù)據(jù)即時(shí)轉(zhuǎn)換為 CSV 格式
炎炎設(shè)計(jì)
2021-06-28 12:55:03