Mengalih keluar Elemen daripada Tatasusunan PHP mengikut Nilai (Bukan Kunci)
Apabila berurusan dengan tatasusunan dalam PHP, selalunya perlu mengalih keluar elemen berdasarkan pada nilai mereka dan bukannya kunci mereka. Pertimbangkan tatasusunan seperti ini:
$messages = [312, 401, 1599, 3, ...];
Dengan nilai dalam tatasusunan ini unik, bagaimanakah kita boleh memadamkan elemen dengan nilai tertentu secara selektif tanpa mengetahui kuncinya?
Penyelesaian : Menggunakan array_search() dan unset()
PHP menyediakan dua fungsi berguna untuk tujuan ini: array_search() dan unset(). Gabungan fungsi ini membolehkan kita mencari kunci elemen dan kemudian mengeluarkannya daripada tatasusunan. Begini cara ia berfungsi:
if (($key = array_search($del_val, $messages)) !== false) { unset($messages[$key]); }
Kod ini menggunakan array_search() untuk mencari kunci elemen dengan nilai $del_val. Jika kunci tidak ditemui, array_search() mengembalikan FALSE. Walau bagaimanapun, kami menggunakan operator perbandingan yang ketat !== untuk memastikan bahawa ungkapan hanya menilai kepada benar jika array_search() secara eksplisit mengembalikan FALSE, mengelakkan nilai false-y (cth., kunci 0).
Jika kuncinya ialah didapati, fungsi unset() digunakan untuk mengalih keluar elemen daripada tatasusunan $messages. Adalah penting untuk ambil perhatian bahawa unset() berfungsi mengikut kunci, itulah sebabnya kita perlu mendapatkan kunci daripada array_search() terlebih dahulu.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengalih Keluar Elemen daripada Tatasusunan PHP mengikut Nilai, Bukan Kunci?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!