Rumah >pembangunan bahagian belakang >masalah PHP >PHP mengalih keluar tatasusunan satu dimensi
Dalam PHP, tatasusunan ialah jenis data yang sangat biasa. Untuk tatasusunan satu dimensi, kadangkala kita perlu memadam atau menapis beberapa elemen di dalamnya untuk mencapai kesan yang diingini. Artikel ini akan memperkenalkan cara mengalih keluar elemen daripada tatasusunan satu dimensi dalam PHP.
1. Padamkan elemen dengan nama kunci yang ditentukan
PHP menyediakan fungsi unset(), yang boleh digunakan untuk memadamkan elemen dengan nama kunci yang ditentukan dalam tatasusunan. Berikut ialah contoh:
$arr = array('a' => 'apple', 'b' => 'banana', 'c' => 'cherry'); unset($arr['b']); //删除键名为'b'的元素 print_r($arr);
Hasilnya ialah:
Array ( [a] => apple [c] => cherry )
Dalam contoh ini, kita mula-mula mentakrifkan tatasusunan bersekutu $arr, yang mengandungi tiga elemen. Kemudian gunakan fungsi unset() untuk memadamkan elemen dengan nama kunci 'b', dan akhirnya gunakan fungsi print_r() untuk mengeluarkan tatasusunan Anda boleh melihat bahawa elemen yang ditentukan telah berjaya dipadamkan.
Jika nama kunci yang ingin kami padamkan tidak pasti, kami boleh menggunakan gelung foreach untuk merentasi tatasusunan, dan kemudian gunakan fungsi unset() dalam badan gelung untuk memadamkan elemen yang memenuhi syarat. Berikut ialah contoh:
$arr = array('apple', 'banana', 'cherry'); foreach ($arr as $key => $value) { if ($value == 'banana') { unset($arr[$key]); //删除值为'banana'的元素 } } print_r($arr);
Hasilnya ialah:
Array ( [0] => apple [2] => cherry )
Dalam contoh ini, kami mentakrifkan tatasusunan biasa $arr, dan kemudian menggunakan gelung foreach untuk melintasi tatasusunan. Dalam badan gelung, tentukan sama ada nilai elemen semasa adalah sama dengan 'pisang' dan jika ya, gunakan fungsi unset() untuk memadamkan elemen tersebut.
2. Tapis elemen dalam tatasusunan
Jika kita ingin mengekalkan elemen dalam tatasusunan dengan syarat yang ditentukan dan memadamkan elemen lain, kita boleh menggunakan fungsi array_filter(). Parameter pertama fungsi ini ialah tatasusunan yang perlu ditapis, dan parameter kedua ialah fungsi panggil balik yang digunakan untuk menentukan sama ada elemen itu perlu dikekalkan. Fungsi panggil balik menerima setiap elemen tatasusunan sebagai parameter dan mengembalikan nilai Boolean untuk menentukan sama ada elemen itu perlu dikekalkan.
Berikut ialah contoh:
$arr = array(3, 2, 1, 4, 5); $result = array_filter($arr, function ($value) { return $value > 2; //保留大于2的元素 }); print_r($result);
Hasilnya ialah:
Array ( [0] => 3 [3] => 4 [4] => 5 )
Dalam contoh ini, kami mentakrifkan tatasusunan biasa $arr dan menggunakan fungsi array_filter() untuk menapis keluarkan item yang lebih besar daripada 2 elemen, simpan hasilnya dalam $result, dan akhirnya gunakan fungsi print_r() untuk mengeluarkannya.
3 Gunakan fungsi array_splice() untuk memadam elemen
Selain menggunakan fungsi unset(), anda juga boleh menggunakan fungsi array_splice() untuk memadam elemen dalam satu dimensi tatasusunan. Parameter pertama fungsi ini ialah tatasusunan asal, parameter kedua ialah kedudukan di mana pemadaman bermula, dan parameter ketiga ialah bilangan elemen yang akan dipadamkan. Berikut ialah contoh:
$arr = array('a', 'b', 'c', 'd'); array_splice($arr, 1, 2); //从位置1开始删除2个元素 print_r($arr);
Hasilnya ialah:
Array ( [0] => a [3] => d )
Dalam contoh ini, kami mentakrifkan tatasusunan biasa $arr dan menggunakan fungsi array_splice() untuk memadam 2 elemen bermula dari kedudukan 1, Akhir sekali, gunakan fungsi print_r() untuk mengeluarkan.
4. Ringkasan
Melalui pengenalan artikel ini, kami telah mempelajari beberapa kaedah untuk mengalih keluar elemen daripada tatasusunan satu dimensi dalam PHP. Sama ada ia memadamkan elemen dengan nama kunci yang ditentukan, menapis elemen dalam tatasusunan atau menggunakan fungsi array_splice() untuk memadam elemen, kita boleh mencapai fungsi yang kita perlukan dengan mudah. Bergantung pada senario aplikasi tertentu, kita boleh memilih kaedah yang sepadan untuk melaksanakannya.
Atas ialah kandungan terperinci PHP mengalih keluar tatasusunan satu dimensi. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!