Kaedah 1: Gunakan fungsi array_unique() untuk menyahduplikasi tatasusunan, sintaksnya ialah "array_unique($arr)" 2. Manfaatkan ciri nama kunci tatasusunan PHP yang tidak boleh diulang dan gunakan array_flip () berfungsi untuk membalikkan nombor dua kali Nama kunci dan kedudukan nilai kunci kumpulan, sintaksnya ialah "array_flip(array_flip($arr))"; , gunakan pernyataan foreach untuk membalikkan nama kunci dan kedudukan nilai kunci tatasusunan dua kali.
Persekitaran pengendalian tutorial ini: sistem Windows 7, versi PHP 8, komputer DELL G3
php menyediakan pelbagai kaedah untuk memadam elemen pendua daripada tatasusunan. Mari ketahui di bawah.
Kaedah 1: Gunakan fungsi array_unique() untuk menyahduplikasi tatasusunan
Fungsi array_unique() digunakan untuk mengalih keluar nilai pendua dalam tatasusunan. Jika dua atau lebih nilai tatasusunan adalah sama, hanya nilai pertama dikekalkan dan nilai lain dikeluarkan.
Nota: Tatasusunan yang dikekalkan akan mengekalkan jenis kunci item tatasusunan pertama.
<?php header("content-type:text/html;charset=utf-8"); $array = array(1,2,3,3,4,2,3,5,6,4,5,7,8,9,10); var_dump($array); $result = array_unique($array); echo "删除重复元素后的数组"; //var_dump(array_values($filtered_array)); var_dump($result); ?>
Kaedah 2: Gunakan fungsi array_flip()
array_flip() Fungsi ini digunakan untuk membalikkan/menukar nama kunci dalam tatasusunan dan nilai kunci berkaitan yang sepadan.
Ia mempunyai ciri yang jika dua nilai dalam tatasusunan adalah sama, maka kunci dan nilai terakhir akan dikekalkan selepas penyongsangan Menggunakan ciri ini, kami menggunakannya untuk mencapai penyahduplikasian secara tidak langsung tatasusunan.
<?php header("content-type:text/html;charset=utf-8"); $a = array(1, 5, 2, 5, 1, 3, 2, 4, 5); // 输出原始数组 echo "原始数组 :"; var_dump($a); // 通过使用翻转键和值移除重复值 $a = array_flip($a); // 通过再次翻转键和值来恢复数组元素 $a = array_flip($a); // 重新排序数组键 $a = array_values($a); // 输出更新后的数组 echo "更新数组 :"; var_dump($a); ?>
Kaedah 3: Gunakan pernyataan foreach untuk membalikkan nama kunci dan kedudukan nilai kunci tatasusunan dua kali
Langkah 1: Tentukan 2 tatasusunan kosong untuk menyimpan dua kali nama kunci terbalik dan nilai kunci
$res1=[]; $res2=[];
Langkah 2: Gunakan pernyataan foreach untuk melintasi Asal tatasusunan, tetapkan nama kunci tatasusunan asal dan nilai kunci kepada tatasusunan kosong sebagai nilai kunci dan nama kunci
foreach ($array as $k1 => $v1){ //在每次循环中会将当前数组的值赋给 $v1,键名赋给 $k1 $res1[$v1]=$k1; }
akan mendapat tatasusunan dengan nama kunci terbalik dan nilai kunci
Langkah 3: Gunakan pernyataan foreach untuk melintasi tatasusunan terbalik, dan tetapkan nama kunci dan nilai kunci tatasusunan terbalik kepada tatasusunan kosong yang lain sebagai nilai kunci dan nama kunci
foreach ($res1 as $k2 => $v2){ $res2[$v2]=$k2; }
Kod pelaksanaan
<?php header("content-type:text/html;charset=utf-8"); function f($arr){ var_dump($arr); $res1=[]; $res2=[]; foreach($arr as $k1=>$v1){ $res1[$v1]=$k1; } foreach ($res1 as $k2 => $v2){ $res2[$v2]=$k2; } echo "去重后的数组:"; var_dump($res2); } $arr=array(1,2,3,4,5,4,3,2,1,0); f($arr); ?>
Pembelajaran yang disyorkan: "Tutorial Video PHP"
Atas ialah kandungan terperinci Bagaimana untuk memadam elemen pendua dari tatasusunan dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!