PHP:将数组拆分为更深的数组
我有以下数组:PHP:将数组拆分为更深的数组,php,arrays,foreach,Php,Arrays,Foreach,我有以下数组: Array( [0] => 0,0 [1] => 0,1 [2] => 0,2 [3] => 0,3 [4] => 1,0 [5] => 1,1 [6] => 1,2 [7] => 2,0 [8] => 2,1 [9] => 2,2 [10] => 2,3 ) 我想将其分为以下结构: Array( [0] => Array (
Array(
[0] => 0,0
[1] => 0,1
[2] => 0,2
[3] => 0,3
[4] => 1,0
[5] => 1,1
[6] => 1,2
[7] => 2,0
[8] => 2,1
[9] => 2,2
[10] => 2,3
)
我想将其分为以下结构:
Array(
[0] => Array (
[0] => 0
[1] => 1
[2] => 2
[3] => 3
)
[1] => Array (
[0] => 0
[1] => 1
[2] => 2
[3] => 3
)
[2] => Array (
[0] => 0
[1] => 1
[2] => 2
[3] => 3
)
[3] => Array (
[0] => 0
[1] => 1
[2] => 2
[3] => 3
)
i、 例如,在“X,Y”值中,X对应于值“Y”在新数组中的位置。我似乎无法理解逻辑,这是我第一次以这种方式使用“foreach”
如果您能为我指明正确的方向,我们将不胜感激。您示例中的输入和输出数组并不完全匹配,但我猜您正在寻找以下内容:
$array = array(…as above…);
$newArray = array();
foreach ($array as $value) {
list($x, $y) = explode(',', $value);
$newArray[$x][] = $y;
}
您的示例中的输入和输出数组并不完全匹配,但我猜您正在寻找以下内容:
$array = array(…as above…);
$newArray = array();
foreach ($array as $value) {
list($x, $y) = explode(',', $value);
$newArray[$x][] = $y;
}
第二个代码块与第一个代码块没有关系。你能举一个输入输出的例子吗?你的第二个代码块和第一个代码块没有关系。你能举一个输入输出的例子吗?这可以通过将$value作为实际数组元素的引用传递到循环中来提高内存效率:foreach($array as&$value){/…}@Techpriester现在这是一些微优化,如果我见过的话o) @deceze:你比5分钟还快,所以它不允许我这么做haha@deceze:当然,这不多,但我在每个允许它的foreach循环中都这样做。过了一段时间,它变成了一种非常有用的习惯,当你真正需要它时,你不会忘记它通过将$value作为对实际数组元素的引用传递到循环中,可以提高内存效率:foreach($array as&$value){/…}@Techpriester现在,如果我见过一些,这是一些微优化:o) @deceze:你比5分钟还快,所以它不允许我这么做haha@deceze:当然,这不多,但我在每个允许它的foreach循环中都这样做。过了一段时间,它变成了一种非常有用的习惯,当你真正需要它时,你不会忘记它