Dalam proses pembangunan web, bahasa PHP telah menjadi salah satu bahasa pengaturcaraan yang paling popular. Antaranya, tatasusunan dalam PHP adalah struktur data yang sangat biasa Ia sangat fleksibel dan boleh disesuaikan dan boleh digunakan untuk menyimpan dan memproses pelbagai jenis data.
Walau bagaimanapun, dalam pembangunan, kita sering menghadapi keperluan untuk mengalih keluar elemen bukan pendua daripada tatasusunan yang sangat besar. Untuk masalah ini, tatasusunan PHP menyediakan banyak penyelesaian yang berbeza Mari kita perkenalkan satu persatu di bawah.
Kaedah 1: Gunakan fungsi array_unique
Fungsi array_unique ialah fungsi yang disertakan dengan PHP dan digunakan untuk mengalih keluar elemen pendua daripada tatasusunan dan mengembalikan tatasusunan elemen bukan pendua. Penggunaannya sangat mudah, seperti yang ditunjukkan di bawah:
$my_array = array(1,2,2,3,3,3,4,4,4,4); $unique_array = array_unique($my_array); print_r($unique_array);
Kod di atas akan mengeluarkan hasil berikut:
Array ( [0] => 1 [1] => 2 [3] => 3 [6] => 4 )
Seperti yang anda lihat, melalui fungsi array_unique, kita boleh mengalih keluar item unik dengan mudah daripada elemen tatasusunan asal.
Kaedah 2: Gunakan fungsi array_flip dan array_keys
Jika kita perlu mengembalikan tatasusunan nama kunci dengan elemen tidak berulang, kita boleh menggunakan gabungan fungsi array_flip dan array_keys, seperti yang ditunjukkan di bawah :
$my_array = array(1,2,2,3,3,3,4,4,4,4); $unique_keys = array_keys(array_flip($my_array)); print_r($unique_keys);
Kod di atas akan mengeluarkan keputusan berikut:
Array ( [0] => 0 [1] => 1 [2] => 3 [3] => 6 )
Seperti yang anda lihat, melalui fungsi array_flip dan array_keys, kami mendapat tatasusunan nama kunci elemen unik.
Kaedah 3: Gunakan fungsi gelung dan in_array
Ini adalah pendekatan yang agak biasa Kita boleh menggunakan gelung untuk melintasi keseluruhan tatasusunan, dan kemudian menggunakan fungsi in_array untuk menyemak sama ada elemen semasa sudah wujud dalam tatasusunan.
$my_array = array(1,2,2,3,3,3,4,4,4,4); $unique_array = array(); foreach($my_array as $value){ if(!in_array($value,$unique_array)){ $unique_array[] = $value; } } print_r($unique_array);
Di sini kita Melalui gabungan fungsi gelung dan in_array, elemen unik berjaya dialih keluar daripada tatasusunan asal.
Kaedah 4: Gunakan fungsi array_reduce
Fungsi array_reduce boleh digunakan untuk lelaran pada tatasusunan dan mengurangkan setiap nilai dalam tatasusunan kepada satu nilai. Oleh itu, jika kita ingin mendapatkan tatasusunan dengan elemen tidak berulang, kita boleh menggunakan fungsi array_reduce untuk beroperasi Kodnya adalah seperti berikut:
Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 )
Kod di atas akan mengeluarkan keputusan berikut:
$my_array = array(1,2,2,3,3,3,4,4,4,4); $unique_array = array_reduce($my_array,function($result,$value){ if(!in_array($value,$result)){ $result[] = $value; } return $result; }, array()); print_r($unique_array);
OK Kami melihat bahawa kami telah mencapai tujuan untuk mengalih keluar elemen tidak berulang daripada tatasusunan asal dengan menggunakan gabungan fungsi array_reduce dan in_array.
Ringkasan
Di atas ialah beberapa cara untuk mengalih keluar elemen unik daripada tatasusunan PHP. Walaupun setiap kaedah mempunyai ciri dan kegunaannya, perlu diingatkan bahawa apabila memproses tatasusunan besar, kecekapan setiap kaedah mungkin berbeza, dan anda perlu memilih dan menggunakannya mengikut situasi.
Saya harap artikel ini akan membantu anda memahami dan menggunakan tatasusunan PHP.
Atas ialah kandungan terperinci Bagaimana untuk mengalih keluar elemen unik daripada tatasusunan php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!