配列は次の形式です - 基本的には書式設定済みのCSV行の配列です - この例のキー0と1は改行を含むCSV値です。array()内のCSV行は、改行を維持する必要があります
私は次のやっている何をArray
(
[0] => 'foo,foo,foo,foo
bar,foo,a:1:{i:0;s:4:"blah";}'
[1] => 'bar,bar,bar,bar
foo,bar,a:1:{i:0;s:4:"blah";}'
[1] => 'bar,bar,bar,foo,bar,a:1:{i:0;s:4:"blah";}'
)
は、それを書いた後、CSVファイルを生成するために、接着剤として\r\n
を使用していることを内破されます。問題は、結果のファイルが改行を含むフィールドを二重引用符で囲んでいないため、改行が保存されている可能性があるということです(少なくとも私は仮定します)。
生成されたCSVファイルはデータベースにアップロードされるかExcelで編集され、改行はフィールドに保存する必要があります。
適切な形式に展開した後にfputcsvを使用すると、行区切りを持つCSVが生成され、メモ帳などで表示される二重引用符で囲まれ、Excelで開かれたときには表示されません。
$parent_wholelines = array();
foreach ($output_array as $wholeline) {
$parent_wholelines[] = explode(',', $wholeline);
}
「var_export」を推奨します。 'print_r'はあなたのデータが何であるかを_precisely_に見せてくれません。 –
@ Tomalak-Geret'kal - var_exportは同じ場合を出力し、キーラッピング引用符ごとにいくつか出力します。 – Dan
はい;それらは有用である。私たちの分野では、精度が重要です。 –