Rumah > pembangunan bahagian belakang > masalah PHP > Bagaimana untuk menggantikan tatasusunan dua dimensi dalam php

Bagaimana untuk menggantikan tatasusunan dua dimensi dalam php

WBOY
Lepaskan: 2023-05-19 20:33:37
asal
906 orang telah melayarinya

Dalam PHP, tatasusunan ialah struktur data yang sangat biasa dan berguna. Tatasusunan dua dimensi menambah satu dimensi kepada tatasusunan satu dimensi, membolehkan penyimpanan dan manipulasi data yang lebih fleksibel. Walau bagaimanapun, dalam aplikasi sebenar, kita mungkin perlu melakukan operasi gantian pada tatasusunan dua dimensi, seperti menggantikan nilai tertentu dalam tatasusunan, dan operasi gantian ini perlu dilaksanakan dalam berbilang subtatasusunan pada masa yang sama. Artikel ini akan memperkenalkan cara menggantikan tatasusunan dua dimensi dalam PHP.

1. Gantikan satu nilai dalam tatasusunan dua dimensi

Dalam PHP, kita boleh menggunakan fungsi array_replace() untuk menggantikan satu nilai dalam tatasusunan. Fungsi ini menerima berbilang tatasusunan sebagai parameter dan mengembalikan tatasusunan baharu selepas penggantian. Sebagai contoh, kita mempunyai tatasusunan dua dimensi berikut:

$arr = array(
   array('name' => 'Tom', 'age' => 18),
   array('name' => 'Jack', 'age' => 20),
   array('name' => 'Mary', 'age' => 22)
);
Salin selepas log masuk

Jika kita perlu menukar maklumat bernama "Tom" kepada "Peter", kita boleh menggunakan fungsi array_replace() untuk mencapai ini:

$newArr = array_replace($arr[0], array('name' => 'Peter'));
$arr[0] = $newArr;
Salin selepas log masuk

Kod di atas , kita mula-mula menggunakan fungsi array_replace() untuk menggantikan maklumat bernama "Tom" dengan maklumat bernama "Peter", dan menetapkan tatasusunan baru yang diganti kepada pembolehubah $newArr. Kemudian, kami menugaskan $newArr kembali ke tatasusunan asal sekali lagi, merealisasikan operasi menggantikan elemen dalam tatasusunan dua dimensi.

2. Gantikan berbilang nilai dalam tatasusunan dua dimensi

Jika kita perlu menggantikan nilai yang sama dalam pelbagai sub-tatasusunan dalam tatasusunan dua dimensi, maka kita boleh gunakan fungsi array_map() untuk merentasi tatasusunan dan menggantikannya. Contohnya adalah seperti berikut:

$array = array(
 array('name' => 'Tom', 'age' => 18, 'sex' => 'M'),
 array('name' => 'Jack', 'age' => 20, 'sex' => 'M'),
 array('name' => 'Mary', 'age' => 22, 'sex' => 'F')
);

function replace_name($array) {
 $array['name'] = 'Peter';
 return $array;
}

$new_arr = array_map('replace_name', $array);
Salin selepas log masuk

Dalam kod di atas, kami mentakrifkan fungsi bernama replace_name, yang menerima tatasusunan sebagai parameter dan menukar nilai yang sepadan dengan kunci "nama" dalam tatasusunan kepada "Peter" kembali. Kami kemudiannya menggunakan fungsi array_map() untuk menggunakan fungsi tersebut pada setiap sub-array bagi tatasusunan asal dan memberikan hasil yang diproses kepada pembolehubah $newArr. Akhir sekali, kita boleh menggunakan fungsi print_r() untuk mengeluarkan kandungan tatasusunan baharu ke skrin untuk dilihat.

3. Gunakan rujukan untuk melaksanakan penggantian

Dalam PHP, gunakan rujukan (&) untuk menukar nilai parameter sebenar dalam panggilan fungsi. Oleh itu, kita juga boleh menggunakan rujukan untuk menggantikan data dalam tatasusunan dua dimensi. Contohnya:

$array = array(
 array('name' => 'Tom', 'age' => 18, 'sex' => 'M'),
 array('name' => 'Jack', 'age' => 20, 'sex' => 'M'),
 array('name' => 'Mary', 'age' => 22, 'sex' => 'F')
);

function replace_name(&$array) {
 $array['name'] = 'Peter';
}

foreach($array as &$value) { replace_name($value); }
Salin selepas log masuk

Dalam kod di atas, kami mentakrifkan fungsi replace_name yang menghantar tatasusunan melalui rujukan sebagai parameter dan menggantikan kekunci "nama" dalam tatasusunan dengan "Peter". Kami kemudian beralih melalui tatasusunan asal melalui gelung foreach dan lulus setiap elemen secara bergilir-gilir ke fungsi replace_name menggunakan rujukan. Akhirnya, nilai yang sepadan dengan kunci "nama" dalam tatasusunan asal telah berjaya digantikan dengan "Peter".

Ringkasnya, untuk menggantikan tatasusunan dua dimensi dalam PHP, anda boleh menggunakan fungsi array_replace(), fungsi array_map() atau lulus parameter melalui rujukan dan mencapainya melalui gelung. Kaedah yang berbeza sesuai untuk senario yang berbeza, dan anda boleh memilih secara fleksibel mengikut situasi sebenar.

Atas ialah kandungan terperinci Bagaimana untuk menggantikan tatasusunan dua dimensi dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan