Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/242.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 合并不同长度的子数组_Php_Arrays - Fatal编程技术网

Php 合并不同长度的子数组

Php 合并不同长度的子数组,php,arrays,Php,Arrays,我有一个动态构建的数组,看起来是这样的: array(2) { [0]=> array(2) { [0]=> array(1) { ["rhID"]=> string(6) "169135" } [1]=> array(1) { ["rhID"]=> string(6) "168917" } } [1]=> array(2) { [0]=

我有一个动态构建的数组,看起来是这样的:

array(2) {
  [0]=>
  array(2) {
    [0]=>
    array(1) {
      ["rhID"]=>
      string(6) "169135"
    }
    [1]=>
    array(1) {
      ["rhID"]=>
      string(6) "168917"
    }
  }
  [1]=>
  array(2) {
    [0]=>
    array(1) {
      ["rhID"]=>
      string(6) "172168"
    }
    [1]=>
    array(123) {
      ["rhID"]=>
      string(6) "171169"
  } [3]=>
    array(123) {
      ["rhID"]=>
      string(6) "171129"
  }
  [3]=>
  array(1) {
    [0]=>
    array(1) {
      ["rhID"]=>
      string(6) "172768"
    }
}
array(1) {
  [0]=>
  array(4) {
    [0]=>
    array(1) {
      ["rhID"]=>
      string(6) "169135"
    }
    [1]=>
    array(1) {
      ["rhID"]=>
      string(6) "168917"
    }
    [2]=>
    array(1) {
      ["rhID"]=>
      string(6) "172168"
    }
    [3]=>
    array(123) {
      ["rhID"]=>
      string(6) "171169"
     }
    [4]=>
    array(1) {
      ["rhID"]=>
      string(6) "172768"
    }
  }    
}
但是,我们希望这样组合所有子阵列:

array(2) {
  [0]=>
  array(2) {
    [0]=>
    array(1) {
      ["rhID"]=>
      string(6) "169135"
    }
    [1]=>
    array(1) {
      ["rhID"]=>
      string(6) "168917"
    }
  }
  [1]=>
  array(2) {
    [0]=>
    array(1) {
      ["rhID"]=>
      string(6) "172168"
    }
    [1]=>
    array(123) {
      ["rhID"]=>
      string(6) "171169"
  } [3]=>
    array(123) {
      ["rhID"]=>
      string(6) "171129"
  }
  [3]=>
  array(1) {
    [0]=>
    array(1) {
      ["rhID"]=>
      string(6) "172768"
    }
}
array(1) {
  [0]=>
  array(4) {
    [0]=>
    array(1) {
      ["rhID"]=>
      string(6) "169135"
    }
    [1]=>
    array(1) {
      ["rhID"]=>
      string(6) "168917"
    }
    [2]=>
    array(1) {
      ["rhID"]=>
      string(6) "172168"
    }
    [3]=>
    array(123) {
      ["rhID"]=>
      string(6) "171169"
     }
    [4]=>
    array(1) {
      ["rhID"]=>
      string(6) "172768"
    }
  }    
}
请注意,我永远不知道我将拥有多少子阵列。可能是1、2或7。对不起,如果我忘了带括号的东西,我正在记事本上快速编辑

foreach ($array as $subarray) {
    foreach ($subarray as $entry) {
        $newArray[] = $entry;
    }
}

就这么简单。

@bwoebi我在看过你最初的帖子后也会这么做,正确地打开和关闭
foreach
loop@DarylGill可以对我来说,这只是行浪费(对我来说已经足够了)这不是行浪费,而是a)坚持标准,更重要的是b)通过给大脑提供视觉支持,让代码更具可读性,告诉他们如何分组和安排阅读内容。换句话说,这就是可用性。