csv中需要保存三个单维数组
$arr1=array(1,2,3);
$arr2=array('a','b','c');
$arr3=array('x','y','z');
我需要将上述数组保存在 csv 中,如下例所示 -
1,a,x
2,b,y
3,c,z
我尝试了以下代码,但它没有以该格式保存
$handle = fopen('file.csv', 'w');
$data=array($arr1,$arr2,$arr3);
foreach ($data as $line) {
fputcsv($handle, $line);
}
fclose($handle);
输出
1,2,3
a,b,c
x,y,z
最佳答案
在写入 CSV 之前转置数据
$data = array($arr1,$arr2,$arr3);
$transposedData = call_user_func_array(
'array_map',
array_merge(
array(NULL),
$data
)
);
$handle = fopen('file.csv', 'w');
foreach ($transposedData as $line) {
fputcsv($handle, $line);
}
fclose($handle);
关于php - 合并并转置 3 个数据数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22063003/