Массив Уникальный в двумерном массиве в PHP - PullRequest
3 голосов
/ 26 марта 2010

Привет, у меня есть массив, который выглядит так:

Array ( [0] => Array ( [x] => 01 [y] => 244 ) [1] => Array ( [x] => 02 [y] => 244 ) [2] => Array ( [x] => 03 [y] => 244 ) [3] => Array ( [x] => 04 [y] => 243 ) [4] => Array ( [x] => 05 [y] => 243 ) [5] => Array ( [x] => 05 [y] => 244 ) [6] => Array ( [x] => 06 [y] => 242 ) [7] => Array ( [x] => 06 [y] => 243 ) [8] => Array ( [x] => 07 [y] => 243 ) [9] => Array ( [x] => 08 [y] => 243 ) [10] => Array ( [x] => 09 [y] => 242 ) [11] => Array ( [x] => 10 [y] => 244 ) [12] => Array ( [x] => 12 [y] => 243 ) [13] => Array ( [x] => 13 [y] => 243 ) [14] => Array ( [x] => 13 [y] => 243 ) [15] => Array ( [x] => 15 [y] => 243 ) ) 

x представляют дни и значения y определенной переменной. Я хотел бы отобразить массив уникальных дней x (последний элемент) и значений y прагматично.

например, день 6 У меня есть два значения y, но я хочу отобразить только последнее (243).

Спасибо за помощь

1 Ответ

1 голос
/ 26 марта 2010

Один из способов сделать это - использовать простой цикл для генерации нового массива, перезаписывая любые существующие значения для данной даты по мере продвижения.

Фрагмент кода

// $data = ... your array from the question
$result = array();
foreach ($data as $value) {
    $result[$value['x']] = $value['y'];
}

print_r($result);

Выходы

Array
(
    [01] => 244
    [02] => 244
    [03] => 244
    [04] => 243
    [05] => 244
    [06] => 243
    [07] => 243
    [08] => 243
    [09] => 242
    [10] => 244
    [12] => 243
    [13] => 243
    [15] => 243
)

Существует множество альтернативных подходов (или вариантов по теме), если вышеприведенное не подходит для вас.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...