2011-09-21 56 views
0

合并我有这样一个数组:`阵列迭代和使用PHP

Array 
(
    [0] => Array 
     (
      [0] => Array 
       (
        [productid] => 141 
        [fieldid] => 2 
        [value] => Laptop 
       ) 

      [1] => Array 
       (
        [productid] => 191 
        [fieldid] => 2 
        [value] => Books 
       ) 

      [2] => Array 
       (
        [productid] => 177 
        [fieldid] => 2 
        [value] => Printer 
       ) 

     ) 

    [1] => Array 
     (
      [0] => Array 
       (
        [productid] => 141 
        [fieldid] => 1 
        [value] => 3 
       ) 

      [1] => Array 
       (
        [productid] => 191 
        [fieldid] => 1 
        [value] => 4 
       ) 

      [2] => Array 
       (
        [productid] => 177 
        [fieldid] => 1 
        [value] => 2 
       ) 

     ) 

)`

我想这个数组修改,看起来像下面这样:

 
Array 
(
    [0] => Array 
     (
      [productid] => 141 
      [fieldid] => 2 
      [value] => Laptop 
     ) 

    [1] => Array 
     (
      [productid] => 191 
      [fieldid] => 2 
      [value] => Books 
     ) 

    [2] => Array 
     (
      [productid] => 177 
      [fieldid] => 2 
      [value] => Printer 
     ) 

    [3] => Array 
     (
      [productid] => 141 
      [fieldid] => 1 
      [value] => 3 
     ) 

    [4] => Array 
     (
      [productid] => 191 
      [fieldid] => 1 
      [value] => 4 
     ) 

    [5] => Array 
     (
      [productid] => 177 
      [fieldid] => 1 
      [value] => 2 
     ) 
) 

只需卸下外阵列并结合所有的数组块合而为一。这可能在PHP中。 在此先感谢。

回答

1

一种方法可能是这样的:

比方说$items是你原来的数组,

$new_items = array(); 
foreach($items as $item) 
{ 
    $new_items = array_merge($new_items,array_values($item)); 
} 
+0

这就像一个魅力。谢谢。 –

1

是的,你可以用下面的方法做that.Quite简单。

//let the older array be $array 
var $newArray = array(); //new array(all itms will be taken to this array)  
foreach($array as $key->$value){ 
    foreach($value as $key->$innervalue){ 
      $newArray[] = $innervalue; 
      } 

    }