【发布时间】:2015-04-04 01:20:38
【问题描述】:
我正在尝试将多维数组放入 csv 文件中。数组中的数据是这样的:
Array
(
[0] => Array
(
[product_id] => 1111
[name] => Alcatel One Touch Idol 2
[keyword] => alcatel-one-touch-idol-2
[options] => Array
(
[0] => Array
(
[price] => 54.0000
)
[1] => Array
(
[price] => 42.0000
)
[2] => Array
(
[price] => 10.0000
)
[3] => Array
(
[price] =>
)
[4] => Array
(
[price] =>
)
[5] => Array
(
[price] =>
)
[6] => Array
(
[price] =>
)
[7] => Array
(
[price] =>
)
[8] => Array
(
[price] =>
)
[9] => Array
(
[price] =>
)
)
)
[1] => Array
(...... etc)
我得到了所有顶级数据,但是一旦它到达选项数组,我得到Array to string conversion 错误。所以我有两个问题,我首先需要看看为什么会出现这个错误,然后我需要将所有这些信息 fputcsv 放在每个产品的一行上。
到目前为止,我已经将数组解析为 csv:
$output = fopen("php://output",'w') or die("Can't open php://output");
header("Content-Type:application/csv");
header("Content- Disposition:attachment;filename=product_catalog.csv");
$first_line = explode(",", $first_line);
fputcsv($output, $first_line);
foreach($csv as $file) {
fputcsv($output, $file);
}
fclose($output) or die("Can't close php://output");
如果有人可以帮助我,我将不胜感激。 问候。
【问题讨论】:
-
它必须是 CSV 吗?接收端可以处理 JSON 吗?使用 JSON 意味着将保留数组的结构(不会展平)并且更容易重新创建数据
标签: php arrays string multidimensional-array fputcsv