Rumah >pembangunan bahagian belakang >tutorial php >Bagaimanakah Saya Boleh Menyahduplikasi Tatasusunan Berbilang Dimensi dalam PHP Berdasarkan Kunci Tertentu?

Bagaimanakah Saya Boleh Menyahduplikasi Tatasusunan Berbilang Dimensi dalam PHP Berdasarkan Kunci Tertentu?

Barbara Streisand
Barbara Streisandasal
2024-11-26 06:56:11606semak imbas

How Can I Deduplicate a Multi-Dimensional Array in PHP Based on a Specific Key?

Penyahduaan Tatasusunan Berbilang Dimensi PHP

Dalam PHP, adalah mungkin untuk mengalih keluar pendua daripada tatasusunan berbilang dimensi berdasarkan nilai kunci tertentu. Pertimbangkan contoh berikut:

$array = [
    [
        'name' => 'dave',
        'lastname' => 'jones',
        'email' => 'dave.jones@example.com',
    ],
    [
        'name' => 'john',
        'lastname' => 'jones',
        'email' => 'john.jones@example.com',
    ],
    [
        'name' => 'bruce',
        'lastname' => 'finkle',
        'email' => 'bruce.finkle@example.com',
    ],
];

Untuk mengalih keluar sub-tatasusunan pendua berdasarkan kunci e-mel, seseorang boleh menggunakan pendekatan berikut:

$uniqueArray = array();
foreach ($array as $key => $subarray) {
    if (!isset($uniqueArray[$subarray['email']])) {
        $uniqueArray[$subarray['email']] = $subarray;
    }
}

Kaedah ini menggunakan indeks tatasusunan yang unik kunci untuk mencipta tatasusunan baharu ($uniqueArray) dengan sub-tatasusunan bukan pendua. Tatasusunan yang terhasil hanya akan mengandungi elemen berikut:

[
    'dave.jones@example.com' => [
        'name' => 'dave',
        'lastname' => 'jones',
        'email' => 'dave.jones@example.com',
    ],
    'bruce.finkle@example.com' => [
        'name' => 'bruce',
        'lastname' => 'finkle',
        'email' => 'bruce.finkle@example.com',
    ],
]

Perhatikan bahawa susunan kekunci dalam tatasusunan yang terhasil adalah sewenang-wenangnya. Jika pesanan tertentu dikehendaki, langkah tambahan mungkin diperlukan. Kaedah ini boleh digunakan dengan berkesan untuk menyahduplikasi tatasusunan berbilang dimensi berdasarkan kriteria arbitrari.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menyahduplikasi Tatasusunan Berbilang Dimensi dalam PHP Berdasarkan Kunci Tertentu?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn