使用php向数组添加新值

使用php向数组添加新值,php,arrays,loops,foreach,Php,Arrays,Loops,Foreach,我一直在尝试向名为products的数组添加一个新的值对 这是我的循环前数组: "products": [ { "id": "050435", "name": "Test Product", "price": 10, } ] 这是我的循环: $item = []; foreach ($products as $product) { $item['new_item'] = 'item_value'; } $products[] = $item; 现在我需要这样

我一直在尝试向名为products的数组添加一个新的值对

这是我的循环前数组:

"products": [
{
    "id": "050435",
    "name": "Test Product",
    "price": 10,
}
] 
这是我的循环:

$item = [];
foreach ($products as $product) {
    $item['new_item'] = 'item_value';
}
$products[] = $item;
现在我需要这样做,以获得‘item_值’,我需要处理这个数组中的数据以获得这个值,稍后我可以这样做。但是,当我尝试将此项添加到此数组时,会得到此结果

"products": [
  {
    "id": "050435",
    "name": "Test Product",
    "price": 10,
  },
  {
    "new_item": "item_value"
  }
]
我尝试了阵列合并和尝试$products[0][]等,但我无法在products阵列中实现这一点。任何帮助都会很好,谢谢。这就是我想要的:

"products": [
{
    "id": "050435",
    "name": "Test Product",
    "price": 10,
    "new_item": "item_value"
},
]

应该是这么简单:

$products[0]['new_item'] = 'item_value';
如果对
$products
阵列中的每个产品都需要此选项,则:

foreach ($products as $product) {
    $product['new_item'] = 'item_value';
}

如果要向产品数组插入新值,请使用以下代码

foreach ($products as $product) {
    //$item['new_item'] = 'item_value';
    $product['new_item'] = 'item_value';
}

您需要遍历
$products
的原始数组,并为每个
$product
添加一个新的数组键

$products = [
    [
        "id"=> "050435",
        "name"=> "Test Product",
        "price"=> 10
    ],[
        "id"=> "012345",
        "name"=> "Test Product 2",
        "price"=> 15
    ]
];

foreach ($products as $product) {
    $product['new_item'] = 'item_value';
}

echo "<pre>";
print_r($product);
echo "</pre>";
$products=[
[
“id”=>“050435”,
“名称”=>“测试产品”,
“价格”=>10
],[
“id”=>“012345”,
“名称”=>“测试产品2”,
“价格”=>15
]
];
foreach($products as$product){
$product['new_item']='item_value';
}
回声“;
印刷品(产品);
回声“;

新项目
位于产品阵列内。不确定你在寻找什么?很难理解你到底想要得到什么样的结果,因为你正在从你正在做的事情中得到一个完美的结果