Rumah >pembangunan bahagian belakang >masalah PHP >Bagaimana untuk mengalih keluar nama kunci tatasusunan multidimensi dalam php
Dalam PHP, tatasusunan ialah jenis data yang sangat biasa. Tatasusunan multidimensi ialah tatasusunan yang mengandungi satu atau lebih tatasusunan. Dalam aplikasi praktikal, kita selalunya perlu mengekstrak data daripada tatasusunan berbilang dimensi dan menggabungkan serta memprosesnya. Walau bagaimanapun, apabila kami menggunakan tatasusunan berbilang dimensi untuk pemprosesan data, nama utama dalam tatasusunan mungkin menjadi had. Oleh itu, bagaimana untuk mengalih keluar nama utama tatasusunan berbilang dimensi dan mendapatkan semua nilai elemen dalam tatasusunan telah menjadi masalah yang perlu kami selesaikan.
Di sini kami akan memperkenalkan beberapa kaedah biasa untuk mengalih keluar nama utama tatasusunan berbilang dimensi.
Kaedah 1: Gunakan fungsi array_values()
Kita boleh menggunakan PHP built-in function array_values() untuk mengalih keluar nama kunci tatasusunan berbilang dimensi dan hanya menyimpan nilai elemen . Fungsi ini ialah fungsi tatasusunan dalam PHP yang boleh mengembalikan nilai semua nilai dalam tatasusunan, mengabaikan nama kunci, jadi ia boleh menyelesaikan masalah kita.
Seterusnya, mari kita lihat pelaksanaan kod khusus:
$arr = array( array('name' => '小明', 'age' => 23), array('name' => '小红', 'age' => 25) ); $new_arr = array(); foreach($arr as $val) { $new_arr[] = array_values($val); } print_r($new_arr);
Analisis kod:
mentakrifkan tatasusunan berbilang dimensi $arr dan menggunakan array_values() fungsi menukar elemennya menjadi subskrip nilai kunci. Gunakan gelung foreach untuk merentasi tatasusunan, tukar setiap elemen tatasusunan kepada tatasusunan tanpa nama kunci menggunakan fungsi array_values() dan simpannya dalam tatasusunan baharu $new_arr. Akhirnya, tatasusunan $new_arr dicetak dengan memanggil fungsi print_r().
Kaedah 2: Gunakan fungsi array_map()
Kita juga boleh menggunakan fungsi array_map() untuk mengalih keluar nama utama tatasusunan berbilang dimensi. Fungsi ini menerima dua parameter, satu ialah fungsi panggil balik dan satu lagi ialah tatasusunan yang akan diproses. Fungsi panggil balik digunakan untuk memproses setiap elemen dan menukarnya kepada nilai baharu, manakala fungsi peta tatasusunan () mengembalikan tatasusunan baharu yang terdiri daripada tatasusunan hasil yang diperoleh selepas melaksanakan fungsi panggil balik pada setiap elemen tatasusunan asal.
Seterusnya mari kita lihat pelaksanaan kod khusus:
$arr = array( array('name' => '小明', 'age' => 23), array('name' => '小红', 'age' => 25) ); $new_arr = array_map('array_values', $arr); print_r($new_arr);
Analisis kod:
Kami mentakrifkan tatasusunan berbilang dimensi $arr dan tatasusunan kosong $new_arr . Kami kemudian menggunakan fungsi panggil balik array_values() kepada setiap elemen dalam tatasusunan $arr menggunakan fungsi array_map() dan menyimpannya dalam tatasusunan baharu $new_arr. Akhirnya, tatasusunan $new_arr dicetak dengan memanggil fungsi print_r().
Kaedah 3: Gunakan untuk lintasan gelung
Selain menggunakan fungsi terbina dalam untuk memproses tatasusunan berbilang dimensi, kami juga boleh menggunakan untuk lintasan gelung untuk mengalih keluar nama utama pelbagai dimensi tatasusunan. Kita boleh mencapai tujuan mengalih keluar nama kunci dengan melintasi tatasusunan dan menyimpan nilai setiap elemen dalam tatasusunan baharu.
Seterusnya mari kita lihat pelaksanaan kod khusus:
$arr = array( array('name' => '小明', 'age' => 23), array('name' => '小红', 'age' => 25) ); $new_arr = array(); foreach ($arr as $key => $value) { $new_item = array(); foreach($value as $v) { $new_item[] = $v; } $new_arr[] = $new_item; } print_r($new_arr);
Analisis kod:
mentakrifkan tatasusunan berbilang dimensi $arr dan merentasinya. Kemudian, kami mentakrifkan tatasusunan kosong $new_arr, dan menggunakan satu lagi gelung foreach untuk merentasi setiap elemen, dan mengambil nilai daripada setiap elemen dan menyimpannya dalam tatasusunan baharu $new_item. Akhir sekali, kami menyimpan tatasusunan baharu $new_item ke dalam tatasusunan baharu $new_arr dan mencetak tatasusunan $new_arr.
Dalam aplikasi pembangunan sebenar, untuk keperluan pembangunan yang berbeza, kita boleh menggunakan kaedah yang berbeza untuk menyelesaikan masalah dengan tatasusunan berbilang dimensi Kaedah ini juga boleh merujuk kepada tiga kaedah di atas Pembangun boleh memilih mengikut keperluan mereka sendiri. .
Atas ialah kandungan terperinci Bagaimana untuk mengalih keluar nama kunci tatasusunan multidimensi dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!