PHP: разбиение массива на более глубокий массив - PullRequest
0 голосов
/ 31 марта 2010

У меня есть следующий массив:

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 
)

т.е. в значении "X, Y" X соответствует позиции значения "Y" в новом массиве. Кажется, я не могу разобраться с логикой, это мое первое использование «foreach» таким образом.

Любая помощь будет с благодарностью направить меня в правильном направлении.

1 Ответ

6 голосов
/ 31 марта 2010

Массивы ввода и вывода в вашем примере не совсем совпадают, но я предполагаю, что вы ищете это:

$array = array(…as above…);
$newArray = array();

foreach ($array as $value) {
    list($x, $y) = explode(',', $value);
    $newArray[$x][] = $y;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...