Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk mendapatkan elemen dalam tatasusunan yang bukan dalam tatasusunan lain dalam PHP

Bagaimana untuk mendapatkan elemen dalam tatasusunan yang bukan dalam tatasusunan lain dalam PHP

PHPz
PHPzasal
2023-04-18 10:24:231184semak imbas

PHP ialah bahasa skrip yang digunakan secara meluas dalam pembangunan web Ia menyediakan banyak fungsi operasi tatasusunan yang berkuasa, menjadikannya sangat mudah untuk memproses data tatasusunan. Dalam PHP, kita selalunya perlu membandingkan dan menapis tatasusunan yang berbeza, yang memerlukan penggunaan operasi perbezaan tatasusunan PHP.

Artikel ini akan memperkenalkan cara untuk mendapatkan elemen satu tatasusunan yang tiada dalam tatasusunan lain dalam PHP, dan cara menggunakan operasi tatasusunan ini untuk memudahkan proses pembangunan.

1 Dapatkan elemen satu tatasusunan yang tiada dalam tatasusunan yang lain

Dalam PHP, anda boleh menggunakan fungsi array_diff() untuk mendapatkan elemen satu tatasusunan yang tiada dalam tatasusunan lain. . Fungsi ini menerima dua atau lebih tatasusunan sebagai parameter dan mengembalikan elemen dalam tatasusunan pertama yang berbeza daripada tatasusunan lain.

Kod sampel adalah seperti berikut:

$array1 = array('a', 'b', 'c', 'd');
$array2 = array('c', 'd', 'e', 'f');
$result = array_diff($array1, $array2);
print_r($result);

Hasil berjalan adalah seperti berikut:

Array(
    [0] => a
    [1] => b
)

Seperti yang anda lihat, elemen dalam hasil output adalah dalam array 1 tetapi bukan dalam array 2 elemen.

2. Contoh aplikasi

Menggunakan operasi tatasusunan di atas, kami boleh melaksanakan banyak fungsi praktikal:

  1. Padam elemen pendua
Jika kita mempunyai tatasusunan yang mengandungi berbilang elemen, kita perlu mengalih keluar elemen pendua, hanya meninggalkan elemen yang berbeza. Ini boleh dicapai menggunakan fungsi array_diff() di atas.

Kod sampel adalah seperti berikut:

$array = array('a', 'b', 'c', 'b', 'e', 'f', 'a');
$result = array_unique($array);
print_r($result);
Hasil berjalan adalah seperti berikut:

Array(
    [0] => a
    [1] => b
    [2] => c
    [4] => e
    [5] => f
)
Seperti yang anda lihat, elemen dalam hasil output adalah semua berbeza, dan unsur yang diulang telah dialih keluar.

    Penyahduplikasian hasil pertanyaan pangkalan data
Jika kami perlu menanyakan beberapa data daripada pangkalan data, tetapi hasil pertanyaan mungkin mengandungi data pendua, kami perlu menyahduplikasi hasil pertanyaan. Operasi berat. Ia boleh dilaksanakan melalui pernyataan SQL atau menggunakan operasi tatasusunan PHP.

Kod sampel adalah seperti berikut:

$sql = "SELECT * FROM user";
$result = $pdo->query($sql)->fetchAll(PDO::FETCH_ASSOC);
$new_result = array_unique($result, SORT_REGULAR);
print_r($new_result);
Hasil berjalan adalah seperti berikut:

Array(
    [0] => Array(
        [id] => 1
        [username] => test1
        [password] => 123456
    )

    [1] => Array(
        [id] => 2
        [username] => test2
        [password] => 654321
    )

    [2] => Array(
        [id] => 3
        [username] => test3
        [password] => 123456
    )

    [3] => Array(
        [id] => 4
        [username] => test4
        [password] => 123456
    )
)
Seperti yang anda lihat, elemen dalam hasil output adalah tidak berulang.

3. Ringkasan

Artikel ini memperkenalkan cara menggunakan operasi tatasusunan dalam PHP untuk mendapatkan elemen satu tatasusunan yang tidak berada dalam tatasusunan lain, dan saya harap ia akan membantu pembaca memahami PHP Mempunyai pemahaman yang lebih mendalam dan aplikasi operasi tatasusunan. Setiap fungsi operasi tatasusunan mempunyai ciri dan kegunaan tersendiri Pembangun perlu mahir dalam fungsi ini untuk meningkatkan kecekapan pembangunan dan kualiti kod.

Atas ialah kandungan terperinci Bagaimana untuk mendapatkan elemen dalam tatasusunan yang bukan dalam tatasusunan lain dalam PHP. 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