Php 向数组元素添加键

Php 向数组元素添加键,php,arrays,key,Php,Arrays,Key,假设我有一个如下所示的数组: $array = [1, 2, 3]; Array ( [0] => Array ( [id] => 1, ) [1] => Array ( [id] => 2, ) [2] => Array ( [id] => 3, ) ) 现在,我想向上述数组中的每个元素添加键id,以使数组结构如下所示: $ar

假设我有一个如下所示的数组:

$array = [1, 2, 3];
Array
(
    [0] => Array
    (
        [id] => 1,
    )

    [1] => Array
    (
        [id] => 2,
    )

    [2] => Array
    (
        [id] => 3,
    )  
)
现在,我想向上述数组中的每个元素添加键id,以使数组结构如下所示:

$array = [1, 2, 3];
Array
(
    [0] => Array
    (
        [id] => 1,
    )

    [1] => Array
    (
        [id] => 2,
    )

    [2] => Array
    (
        [id] => 3,
    )  
)

我想不出如何解决这个问题,有人知道吗?

使用此选项可以获得具有相同键值但位于不同数组键下的disered数组:

<?php

$array = [1, 2, 3]; 
$newarray=array(); 

foreach( $array as $key => $value ){
    
    $newarray[]=array("id"=>$value); 

} 

print_r($newarray); 

根据参考资料。数组中不可能有重复的密钥。相反,您可以使用以下代码。如果要使用同一个键但位于不同的数组键下

<?php  

$array = [1, 2, 3];  

$array2=array(); 
 
foreach( $array as $key => $value )
{     
$array2[]=array("id"=>$value); 
}  

print_r($array2);  ?>

你不能这样做,因为你会在一个数组中有3个键,都是相同的重复项。这是不合法的或不可能的。数组键必须是唯一的。无论如何,如果它们都是id,那么重点是什么。只需调用数组一个更好的名称,如$id\u arrayA,不可能使用重复密钥。相反,如果您想使用相同的键值但在不同的数组键下,您可以使用此代码。在这种情况下,您可以得到的最好的数组是这样的$array=['id'=>[1,2,3]]。正如已经指出的,不能在数组中使用重复的键。将值指定给同一个键将覆盖上一个值。