我試圖在foreach循環中動態創建未知數量的數組,最后將它們全部合并到一個數組中,并以 JSON 格式將其用于 Google Analytics。到目前為止,我有以下代碼在合并部分引發錯誤: $p=1; foreach(...){ ... $arr = 'arr'.$p; $name = $order->ProductGroupName; $name = str_replace("'", "", $name); $arr = array( "name"=>$name, "id"=>$order->ProductCode, "price"=>$order->RRP, "quantity"=>$order->Quantity ); $p++; } for ($q = 1; $q<$p; $q++){ $arry = 'arr'.$q; $merge = array_merge($arry, $merge); };請問如何動態創建數組并在最后合并它們?我對 PHP 比較陌生,并且已經盡我所能讓它工作。
1 回答

一只萌萌小番薯
TA貢獻1795條經驗 獲得超7個贊
我想我明白你想要做什么。只需動態追加[]到數組,您不需要合并:
foreach($something as $order) {
$arr[] = array (
"name"=>str_replace("'", "", $order->ProductGroupName),
"id"=>$order->ProductCode,
"price"=>$order->RRP,
"quantity"=>$order->Quantity
);
}
如果您出于某種原因想要擁有字符串鍵,那么:
$p = 1;
foreach($something as $order) {
$arr["SomeText$p"] = array (
"name"=>str_replace("'", "", $order->ProductGroupName),
"id"=>$order->ProductCode,
"price"=>$order->RRP,
"quantity"=>$order->Quantity
);
$p++;
}
就是這樣。檢查:
print_r($arr);
諸如變量變量的臭味(盡管沒有正確完成)之類的東西$arry = 'arr'.$q;不應該使用。
- 1 回答
- 0 關注
- 162 瀏覽
添加回答
舉報
0/150
提交
取消