-3

我有一个这样的数组

$数组:

{    name   : xyz
     version  : Array[2]
     {
         0 : Array[2]
         {
             id : 1
             batch : 1
         }
         1 : Array[2]
         {
             id : 2
             batch : 2
         } 
     }
}

如何创建这样的数组:

$results[] = 
name:xyz, version:0, id:1, batch:1
name:xyz, version:1, id:2, batch:2

我想要一个重复公共字段的数组。

4

1 回答 1

0

你的意思是:

$results = array();
$results[] = array('name' => 'xyz', 'version' => 0, 'id' => 1, 'batch' => 1);
$results[] = array('name' => 'xyz', 'version' => 1, 'id' => 1, 'batch' => 1);

然后通过 $results[0]['name'] 访问第一行
或通过 $results[1]['name']访问第二行

编辑

要从 $array 转换为 $results,我必须假设您的 $array 看起来像这样。

$array = 
array('name'    => 'xyz', 
      'version' => array(
                         0 => array(
                                    'id' => 1, 
                                    'batch' => 1
                                    ),
                         1 => array(
                                    'id' => 2, 
                                    'batch' => 2
                                    )
                         )
      );

然后

$results = array();
$name = $array['name'];
foreach($array['version'] as $version => $idandbatch)
{
    $results[] = array('name' => $name,
                       'version' => $version,
                       'id' => $idandbatch['id'],
                       'batch' => $idandbatch['batch']);
}

您可以访问数组

foreach($results as $values)
{
    echo $values['name'];
    echo $values['version'];
    echo $values['id'];
    echo $values['batch'];
}
于 2014-10-24T18:50:21.170 回答