使用键从数组中读取数据

时间:2012-09-12 10:43:28

标签: php arrays

此代码:

$arr1 = array();

for ($i=0; $i<10; $i++)
{
  $arr1[] = array('A'=>rand(0,5), 'B'=>rand(0,4));
}

生成如下数组:

[0] array('A'=>0,[B]=>4)
[1] array('A'=>1,[B]=>3)
[2] array('A'=>3,[B]=>1)
//etc.

我需要得到不同的结构,即:

$arr2 = array('A' => array(0,1,3),'B' => array(4,3,1));

以便稍后我可以使用$arr2['A']。如果创建的数组与第一个示例中显示的一样,那么$arr1['A']将不起作用。

如何$arr2使用FOR $arr1的{​​{1}}。希望我能够清楚地解释自己。

1 个答案:

答案 0 :(得分:3)

尝试:

$arr2 = array(
  'A' => array(),
  'B' => array()
);

for ($i=0; $i<10; $i++)
{
  $arr2['A'][] = rand(0,5);
  $arr2['B'][] = rand(0,4);
}

如果您想将现有的$arr1转换为$arr2,请尝试使用:

$arr2 = array(
  'A' => array(),
  'B' => array()
);

foreach ( $arr1 as $value )
{
  $arr2['A'][] = $value['A'];
  $arr2['B'][] = $value['B'];
}