Terdapat banyak cara untuk menukar tatasusunan kepada senarai unik dalam PHP: array_unique() fungsi: mengaitkan nilai dalam tatasusunan dengan kekunci, dan pilih nilai pertama yang sepadan dengan kunci sebagai elemen unik. Fungsi array_flip() dan array_keys(): mula-mula menukar nilai kunci tatasusunan, dan kemudian mengembalikan tatasusunan baharu yang mengandungi semua kunci. Fungsi tersuai: Untuk kes yang lebih kompleks, fungsi tersuai boleh digunakan untuk mengendalikan nilai pendua dalam tatasusunan.
Cara menukar tatasusunan kepada senarai unik dalam PHP
Apabila memproses data, selalunya perlu menukar tatasusunan kepada senarai unik. Terdapat beberapa cara untuk mencapai ini dalam PHP. Fungsi
array_unique()
Fungsi array_unique()
ialah cara paling mudah untuk menukar tatasusunan kepada senarai unik. Ia mengaitkan nilai dalam tatasusunan dengan kunci dan memilih nilai pertama yang sepadan dengan kunci sebagai elemen unik. array_unique()
函数是将数组转换为不重复列表最简单的方法。它通过将数组中的值与键关联起来,并选择键对应的第一个值为不重复元素。
$array = [1, 2, 3, 1, 2, 4]; $uniqueArray = array_unique($array);
实战案例
考虑一个保存订单中商品 ID 的数组:
$orderIds = [100, 101, 102, 100, 103];
使用 array_unique()
函数,我们可以过滤重复的订单 ID:
$uniqueOrderIds = array_unique($orderIds); var_dump($uniqueOrderIds);
输出:
array(5) { [0]=> int(100) [1]=> int(101) [2]=> int(102) [3]=> int(103) }
array_flip() 和 array_keys() 函数
另一种方法是使用 array_flip()
和 array_keys()
函数。
array_flip()
函数将数组中的键与值互换,array_keys()
函数返回一个包含数组中所有键的新数组。
$array = [1, 2, 3, 1, 2, 4]; $uniqueArray = array_keys(array_flip($array));
这将产生与 array_unique()
function removeDuplicates($array) { $uniqueValues = []; foreach ($array as $value) { if (!in_array($value, $uniqueValues)) { $uniqueValues[] = $value; } } return $uniqueValues; }
Kes praktikal
Pertimbangkan tatasusunan yang menyimpan ID produk dalam susunan:rrreee
Menggunakan fungsiarray_unique()
, kami boleh menapis ID pesanan pendua: 🎜Output: Fungsi 🎜rrreee 🎜🎜array_flip() dan array_keys() 🎜🎜🎜Cara lain ialah menggunakan fungsi array_flip()
dan array_keys()
. 🎜🎜Fungsi array_flip()
menukar kunci dan nilai dalam tatasusunan, dan fungsi array_keys()
mengembalikan tatasusunan baharu yang mengandungi semua kunci dalam tatasusunan. 🎜rrreee🎜Ini akan menghasilkan hasil yang sama seperti fungsi array_unique()
. 🎜🎜🎜Fungsi Tersuai🎜🎜🎜Untuk senario yang lebih kompleks, anda juga boleh menulis fungsi tersuai anda sendiri untuk mengendalikan nilai pendua dalam tatasusunan. 🎜rreeeeAtas ialah kandungan terperinci Bagaimana untuk menukar tatasusunan kepada senarai unik dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!