Rumah > Artikel > pembangunan bahagian belakang > PHP mengalih keluar elemen daripada tatasusunan dua dimensi
Dalam PHP, tatasusunan dua dimensi ialah struktur data biasa Ia terdiri daripada berbilang tatasusunan, dan setiap tatasusunan terdiri daripada berbilang elemen. Kadangkala kita perlu mengalih keluar elemen dalam tatasusunan dua dimensi, seperti pasangan nilai kunci, untuk mencapai tujuan mengendalikan tatasusunan. Jadi bagaimana untuk mengalih keluar elemen daripada tatasusunan dua dimensi?
Pertama, mari kita lihat bagaimana untuk mentakrif tatasusunan dua dimensi dalam PHP:
$arr = array( array('name' => 'Tom', 'age' => 20), array('name' => 'Jack', 'age' => 25), array('name' => 'Mary', 'age' => 18) );
Susun atur dua dimensi ini terdiri daripada tiga tatasusunan satu dimensi, setiap tatasusunan satu dimensi mempunyai dua kunci pasangan nilai, 'nama' dan 'umur' masing-masing. Sekarang mari kita tunjukkan cara untuk mengalih keluar elemen daripada tatasusunan dua dimensi ini.
Kaedah 1:
foreach ($arr as &$item) { unset($item['name']); }
Kaedah ini menggunakan fungsi unset() dalam PHP, yang boleh memadamkan pembolehubah yang ditentukan. Dalam kod di atas, kami menggunakan gelung foreach untuk mengulangi setiap tatasusunan satu dimensi dalam tatasusunan dua dimensi dan menggunakan fungsi unset() untuk memadamkan nilai yang sepadan dengan kekunci 'nama'. Apa yang perlu diperhatikan di sini ialah kita menggunakan simbol rujukan (&) dalam foreach, iaitu mengubah suai terus elemen tatasusunan dan bukannya membuat salinan.
Kaedah 2:
foreach ($arr as &$item) { $item = array_diff_key($item, array('name' => '')); }
Kaedah ini menggunakan fungsi array_diff_key() dalam PHP dan tatasusunan kosong Fungsi ini digunakan untuk mengembalikan koleksi kunci yang berbeza dalam dua tatasusunan. Dalam kod di atas, kami menggunakan gelung foreach untuk melintasi setiap tatasusunan satu dimensi dalam tatasusunan dua dimensi dan menggunakan fungsi array_diff_key() untuk memadamkan nilai yang sepadan dengan kekunci 'nama'. Apa yang perlu diperhatikan di sini ialah kami lulus dalam kekunci 'nama' dalam tatasusunan kosong, supaya fungsi array_diff_key() hanya mengembalikan nilai yang sepadan dengan kekunci 'nama'.
Kaedah 3:
foreach ($arr as &$item) { $keys = array_keys($item); $values = array_values($item); $index = array_search('name', $keys); unset($keys[$index]); unset($values[$index]); $item = array_combine($keys, $values); }
Kaedah ini menggunakan beberapa fungsi tatasusunan dalam PHP, termasuk array_keys(), array_values(), array_search() dan array_combine(). Dalam kod di atas, kita mula-mula menggunakan fungsi array_keys() dan array_values() untuk menyimpan kunci dan nilai tatasusunan satu dimensi ke dalam $keys dan $values variables masing-masing. Kemudian gunakan fungsi array_search() untuk mencari lokasi kunci 'nama', dan gunakan fungsi unset() untuk memadamkan kunci dan nilai yang sepadan. Akhir sekali, gunakan fungsi array_combine() untuk menggabungkan semula kunci dan nilai yang tinggal ke dalam tatasusunan satu dimensi.
Ketiga-tiga kaedah boleh digunakan untuk mengalih keluar elemen daripada tatasusunan dua dimensi Kaedah khusus yang digunakan bergantung pada keperluan sebenar. Tidak kira kaedah yang digunakan, kita perlu memberi perhatian kepada cara kita melintasi tatasusunan untuk mengelakkan pemadaman secara tidak sengaja.
Atas ialah kandungan terperinci PHP mengalih keluar elemen daripada tatasusunan dua dimensi. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!