Imshow на Python становится все меньше и меньше при увеличении?

Если «удалить дубликаты» означает «удалить дубликаты, но пусть один там», решение может заключаться в том, чтобы сначала применить array_unique(...) в «столбце идентификатора», а затем удалить в исходном массиве все ключи, которые имеют были удалены из массива столбцов:

$array = [
    [
        'id' => '123',
        'foo' => 'aaa',
        'bar' => 'bbb'
    ],
    [
        'id' => '123',
        'foo' => 'ccc',
        'bar' => 'ddd'
    ],
    [
        'id' => '567',
        'foo' => 'eee',
        'bar' => 'fff'
    ]
];

$ids = array_column($array, 'id');
$ids = array_unique($ids);
$array = array_filter($array, function ($key, $value) use ($ids) {
    return in_array($value, array_keys($ids));
}, ARRAY_FILTER_USE_BOTH);

Результат:

Array
(
    [0] => Array
        (
            [id] => 123
            [foo] => aaa
            [bar] => bbb
        )

    [2] => Array
        (
            [id] => 567
            [foo] => eee
            [bar] => fff
        )

)
0
задан Spacey 19 March 2019 в 16:58
поделиться