【发布时间】:2019-04-05 16:36:54
【问题描述】:
我正在准备将一些数据导出到 csv。我可以在网络上打印数据,但是当我将其保存到 csv 文件时,它会显示:
Column 1,"Column 2"
Array,"Acme (Sample)",0011U00000AnbfaQAB
Array,"Global (Sample)",0011U00000AnbfbQAB
我怎样才能摆脱“阵列”?
我在这里获取数据并打印出来:
foreach ($records as $record)
{
print 'Name :';
print htmlspecialchars($record['Name']);
print ' - ';
print htmlspecialchars($record['Id']);
print '<br/>';
print "\n";
}
这是将数据保存到 csv 的代码:
$file = fopen('toNavasoft.csv', 'w');
// save the column headers
fputcsv($file, array('Column 1', 'Column 2'));
// save each row of the data
foreach ($records as $record)
{
fputcsv($file, $record);
}
// Close the file
fclose($file);
我刚刚添加了这个:
var_export ($records);
输出是:
array ( 0 => array ( 'attributes' => array ( 'type' => 'Account', 'url' => '/services/data/v20.0/sobjects/Account/0011U00000AnbfaQAB', ), 'Name' => 'Acme (Sample)', 'Id' => '0011U00000AnbfaQAB', ), 1 => array ( 'attributes' => array ( 'type' => 'Account', 'url' => '/services/data/v20.0/sobjects/Account/0011U00000AnbfbQAB', ), 'Name' => 'Global (Sample)', 'Id' => '0011U00000AnbfbQAB', ), )
我希望输出如下:
Column 1,Column 2
Acme (Sample),0011U00000AnbfaQAB
Global (Sample),0011U00000AnbfbQAB
【问题讨论】:
-
只要我们不知道数组长什么样,那它就只是一个猜谜游戏。发布数组的 var_export
-
我猜每个
$record中都有第三个元素,它是一个数组,当您尝试fputcsv()时,它会将所有三个元素都放入其中。 -
我只是用数组的输出来更新它。
-
@Oscar 阅读我的回答,以更详细地了解我在说什么。 Mohammed Yassine CHABLI 也有类似的解决方案。
标签: php multidimensional-array fputcsv