我对PHP比较陌生,所以请原谅我的无知,如果这很容易。
我从API调用中获取结果,其最终目标是将所有结果写入CSV文件,我能够使一切正常工作,除了它只将第一个数组写入CSV文件。我知道有更多的记录(数组),因为当我回显结果时,我通常得到10-15个结果。以下是我使用的代码。
foreach ($list as $order) {
$listOrders = array (
array($order->getBuyerName(), $address['AddressLine1'], $address['AddressLine2'], $address['AddressLine3'], $address['City'], $address['StateOrRegion'], $address['PostalCode'], $orderinfo->getSKU())
);
}
$fp = fopen('order-file.csv', 'w');
foreach ($listOrders as $fields) {
fputcsv($fp, $fields);
}
fclose($fp);
以下是一个结果的示例,但应该有大约10-15:
"TONYA","7X XX Avenue",,,"Spokane Valley",WA,99212,B123
答案 0 :(得分:2)
您始终会在每个$listOrders
周期覆盖foreach
数组。要将元素添加到数组,请使用$listOrders[] = $var
语法,因此它应该看起来像这样
$listOrders = array();
foreach ($list as $order) {
$listOrders[] = array($order->getBuyerName(), $address['AddressLine1'], $address['AddressLine2'], $address['AddressLine3'], $address['City'], $address['StateOrRegion'], $address['PostalCode'], $orderinfo->getSKU());
}