Rumah >pembangunan bahagian belakang >masalah PHP >Bagaimana untuk mengalih keluar data pendua daripada tatasusunan dalam php

Bagaimana untuk mengalih keluar data pendua daripada tatasusunan dalam php

PHPz
PHPzasal
2023-04-23 17:49:25644semak imbas

Dalam pembangunan sebenar, kita selalunya perlu mengosongkan data pendua daripada tatasusunan. Dalam PHP, mengalih keluar data pendua adalah tugas yang mudah kerana PHP menyediakan banyak fungsi terbina dalam untuk menyelesaikan tugas ini.

Berikut ialah beberapa fungsi terbina dalam PHP yang boleh digunakan untuk mengalih keluar data pendua dalam tatasusunan:

  1. fungsi array_unique()

array_unique( ) boleh Digunakan untuk melaksanakan operasi penyahduplikasian pada tatasusunan. Ia mengembalikan tatasusunan baharu yang mengandungi semua nilai berbeza dalam tatasusunan asal.

Penggunaan:

$array = array("a","b","c","d","a","b","e");
$new_array = array_unique($array);
print_r($new_array);

Output:

Array(
    [0] => a
    [1] => b
    [2] => c
    [3] => d
    [6] => e
)
  1. array_diff() fungsi

array_diff() fungsi boleh Digunakan untuk membandingkan dua tatasusunan dan mengembalikan tatasusunan baharu yang mengandungi elemen berbeza.

Penggunaan:

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

Output:

Array(
    [0] => a
    [1] => b
)
  1. fungsi array_merge()

fungsi array_merge() boleh Digunakan untuk menggabungkan berbilang tatasusunan menjadi satu tatasusunan. Jika terdapat data pendua selepas penggabungan, nilai terakhir yang berlaku akan dikekalkan.

Penggunaan:

$array1 = array("a","b","c","d","a","b","e");
$array2 = array("c", "d", "e", "f");
$new_array = array_merge($array1, $array2);
print_r($new_array);

Output:

Array(
    [0] => a
    [1] => b
    [2] => c
    [3] => d
    [4] => a
    [5] => b
    [6] => e
    [7] => c
    [8] => d
    [9] => e
    [10] => f
)
  1. fungsi array_intersect()

fungsi array_intersect() boleh Digunakan untuk membandingkan dua tatasusunan dan mengembalikan tatasusunan baharu yang mengandungi unsur-unsur yang wujud dalam kedua-dua tatasusunan.

Penggunaan:

$array1 = array("a","b","c","d","a","b","e");
$array2 = array("c", "d", "e", "f");
$new_array = array_intersect($array1, $array2);
print_r($new_array);

Output:

Array(
    [2] => c
    [3] => d
    [6] => e
)

Jika anda ingin mengosongkan semua data pendua dalam tatasusunan, anda boleh menggunakan fungsi di atas secara gabungan. Kaedah khusus adalah seperti berikut:

$array1 = array("a","b","c","d","a","b","e");
$array2 = array("c", "d", "e", "f");
$new_array = array_merge(array_diff($array1, array_intersect($array1, $array2)), array_diff($array2, array_intersect($array1, $array2)));
print_r($new_array);

Output:

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

Kaedah di atas boleh mengosongkan semua data pendua dalam tatasusunan dan mengekalkan semua elemen yang berbeza. Jika anda perlu menyimpan yang pertama atau terakhir dalam data pendua, anda boleh menggunakan kaedah berikut:

Simpan yang pertama dalam data pendua:

$new_array = array_unique($array1);

Simpan yang terakhir dalam data pendua :

$new_array = array_intersect($array1, array_unique(array_reverse($array1)));

Atas ialah kandungan terperinci Bagaimana untuk mengalih keluar data pendua daripada tatasusunan 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