fputcsv()
函數用于將一個數組或字符串寫入 CSV 文件。它可以處理多維數組,但是需要先將多維數組轉換為一維數組。可以使用 array_merge()
和 foreach
循環來實現這一目標。
以下是一個示例:
<?php
// 多維數組
$data = [
['John', 'Doe', 'john@example.com'],
['Jane', 'Doe', 'jane@example.com'],
['Jim', 'Smith', 'jim@example.com']
];
// 將多維數組轉換為一維數組
function flatten_array($array) {
$result = [];
foreach ($array as $item) {
if (is_array($item)) {
$result = array_merge($result, flatten_array($item));
} else {
$result[] = $item;
}
}
return $result;
}
$flattened_data = flatten_array($data);
// 將一維數組寫入 CSV 文件
$csv_file = fopen('output.csv', 'w');
if ($csv_file === false) {
die('Error opening file');
}
foreach ($flattened_data as $row) {
fputcsv($csv_file, $row);
}
fclose($csv_file);
?>
這個示例中,我們首先定義了一個多維數組 $data
,然后使用 flatten_array()
函數將其轉換為一維數組 $flattened_data
。接下來,我們使用 fputcsv()
函數將一維數組寫入名為 output.csv
的文件中。