PHPで2次元配列の重複を削除する方法


方法1: array_mapとserializeを使用する方法 この方法では、array_map関数とserialize関数を組み合わせて、2次元配列をシリアライズし、重複を削除します。

$array = [
    [1, 2],
    [3, 4],
    [1, 2],
    [5, 6]
];
$uniqueArray = array_map('unserialize', array_unique(array_map('serialize', $array)));
print_r($uniqueArray);

上記のコードでは、array_map関数を使用して配列の要素をシリアライズし、array_unique関数で重複を削除します。最後に、array_map関数を使用してシリアライズされた要素を元の形式に戻します。

方法2: array_uniqueとarray_valuesを使用する方法 この方法では、array_unique関数とarray_values関数を組み合わせて、2次元配列から重複を削除します。

$array = [
    [1, 2],
    [3, 4],
    [1, 2],
    [5, 6]
];
$uniqueArray = array_values(array_unique($array, SORT_REGULAR));
print_r($uniqueArray);

上記のコードでは、array_unique関数を使用して重複を削除し、array_values関数でインデックスを再構築します。

これらの方法を使用すると、2次元配列から重複を削除することができます。適用する方法は、特定の要件やデータの形式によって異なる場合があります。