Rumah >pembangunan bahagian belakang >masalah PHP >penukaran gelung tatasusunan php
Dalam pengaturcaraan PHP, tatasusunan ialah salah satu struktur data yang paling biasa. Tatasusunan membolehkan kami menyimpan, menyusun dan mengakses sejumlah besar data berkaitan. Dalam banyak kes, kita perlu melakukan satu siri operasi pada tatasusunan, seperti mencari, menyusun, menapis, dsb. Antaranya, penukaran gelung tatasusunan ialah operasi yang agak penting Artikel ini akan memperkenalkan secara terperinci cara menggunakan PHP untuk melaksanakan penukaran gelung tatasusunan.
1. Struktur asas gelung tatasusunan
Dalam PHP, kita boleh menggunakan pernyataan gelung for, foreach dan lain-lain untuk menggelungkan melalui tatasusunan. Berikut ialah struktur asas gelung for:
for ($i = 0; $i < count($array); $i++) { // do something with $array[$i] }
Kesan yang sama boleh dicapai menggunakan pernyataan foreach:
foreach ($array as $value) { // do something with $value }
2. Kaedah penukaran tatasusunan
Dalam PHP, we Tatasusunan boleh ditukar dalam dua cara berikut:
PHP menyediakan sejumlah besar fungsi untuk melaksanakan pelbagai operasi pada tatasusunan, sebahagian daripadanya Boleh digunakan untuk menukar tatasusunan. Berikut ialah beberapa fungsi yang biasa digunakan:
Berikut ialah penggunaan array_map() fungsi Contoh menduakan setiap elemen dalam tatasusunan:
$array = array(1, 2, 3, 4, 5); $new_array = array_map(function($x){ return $x * $x; }, $array); print_r($new_array);
Outputnya ialah:
Array ( [0] => 1 [1] => 4 [2] => 9 [3] => 16 [4] => 25 )
Perhatikan bahawa apabila menggunakan fungsi array_map(), kita perlu menghantar fungsi panggil balik sebagai parameter. Fungsi panggil balik ini mengambil satu hujah (nilai setiap elemen) dan mengembalikan nilai untuk menggantikan elemen.
Kita boleh menggelung melalui tatasusunan dan menukarnya melalui penyataan untuk atau foreach. Berikut ialah contoh menggunakan elemen gelung for ke segi empat sama dalam tatasusunan:
$array = array(1, 2, 3, 4, 5); $new_array = array(); for ($i = 0; $i < count($array); $i++) { $new_array[] = $array[$i] * $array[$i]; } print_r($new_array);
Hasil keluarannya juga:
Array ( [0] => 1 [1] => 4 [2] => 9 [3] => 16 [4] => 25 )
3 Operasi penukaran kelompok
Andaikan kita mempunyai tatasusunan dua dimensi dengan data seperti berikut:
$data = array( array('name' => '张三', 'age' => 19, 'gender' => '男'), array('name' => '李四', 'age' => 21, 'gender' => '女'), array('name' => '王五', 'age' => 20, 'gender' => '男'), );
Sekarang kita perlu menukarnya kepada format berikut:
$new_data = array( array('姓名' => '张三', '年龄' => 19, '性别' => '男'), array('姓名' => '李四', '年龄' => 21, '性别' => '女'), array('姓名' => '王五', '年龄' => 20, '性别' => '男'), );
Kita boleh menggunakan gelung foreach untuk mencapai operasi ini:
$new_data = array(); foreach ($data as $values) { $new_data[] = array('姓名' => $values['name'], '年龄' => $values['age'], '性别' => $values['gender']); } print_r($new_data);
Keluarkan keputusan Seperti berikut:
Array ( [0] => Array ( [姓名] => 张三 [年龄] => 19 [性别] => 男 ) [1] => Array ( [姓名] => 李四 [年龄] => 21 [性别] => 女 ) [2] => Array ( [姓名] => 王五 [年龄] => 20 [性别] => 男 ) )
4. Nota
Dalam PHP, operasi penukaran gelung biasanya menjana tatasusunan baharu tanpa mengubah tatasusunan asal. Oleh itu, berhati-hati harus diambil untuk tidak mengubah nilai tatasusunan asal semasa beroperasi.
Apabila menggunakan fungsi tatasusunan untuk penukaran, kita perlu menghantar fungsi panggil balik sebagai parameter. Jika fungsi panggil balik perlu mengakses beberapa pembolehubah luaran, anda perlu menggunakan penutupan untuk menentukan fungsi panggil balik untuk memastikan ia boleh mengakses pembolehubah luaran dengan betul.
Dalam operasi penukaran gelung, kita perlu memberi perhatian kepada indeks tatasusunan. Jika kita tidak menyatakan secara eksplisit indeks tatasusunan baharu, PHP akan secara automatik menetapkan nilai indeks, biasanya bermula dari 0 dan meningkat.
5. Ringkasan
Tatasusunan dalam PHP ialah struktur data yang sangat berguna, dan penukaran gelung adalah operasi yang sangat penting di kalangan mereka. Kita boleh gunakan untuk, untuk setiap struktur gelung, atau fungsi tatasusunan seperti peta_tatasusunan,penapis_tatasusunan,pengurangan_tatasusunan, dll. untuk mencapai penukaran tatasusunan. Semasa operasi, anda perlu berhati-hati untuk tidak mengubah nilai tatasusunan asal, dan anda perlu memberi perhatian kepada indeks tatasusunan. Saya harap artikel ini dapat membantu pembaca menguasai penukaran gelung tatasusunan dalam PHP.
Atas ialah kandungan terperinci penukaran gelung tatasusunan php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!