Rumah > pembangunan bahagian belakang > masalah PHP > Cara menggunakan PHP untuk menukar nama kunci tatasusunan kepada nilai kunci

Cara menggunakan PHP untuk menukar nama kunci tatasusunan kepada nilai kunci

PHPz
Lepaskan: 2023-04-25 10:10:35
asal
723 orang telah melayarinya

Dalam PHP, kita sering menghadapi situasi di mana kita perlu mengendalikan tatasusunan, termasuk keperluan untuk menukar nama kunci tatasusunan kepada nilai kunci. Artikel ini akan memperkenalkan cara menggunakan PHP untuk menukar nama kunci tatasusunan kepada nilai kunci.

Array ialah struktur data yang biasa digunakan yang boleh menyimpan berbilang elemen dan menyimpannya dalam bentuk pasangan nilai kunci. Dalam PHP, tatasusunan ialah jenis data yang sangat penting. Ia boleh digunakan dalam banyak situasi, seperti merekod maklumat pengguna, menyimpan hasil pertanyaan pangkalan data, dsb.

Dalam sesetengah kes, kita mungkin perlu menukar nama kunci tatasusunan kepada nilai kunci. Sebagai contoh, sesetengah API memerlukan kami menukar nama kunci dalam data JSON kepada nilai kunci untuk menghuraikannya dengan betul. Pada masa yang sama, beberapa operasi tatasusunan juga memerlukan nilai kunci dan bukannya nama kunci Contohnya, apabila menggunakan fungsi array_keys untuk mengembalikan nama kunci tatasusunan, kita boleh menggunakan kaedah ini untuk mendapatkan hasil nilai kunci dengan mudah. .

Berikut ialah beberapa cara untuk menukar nama kunci tatasusunan kepada nilai kunci:

  1. Gunakan gelung foreach

Idea asas: Dengan merentasi tatasusunan, Nama kunci asal digunakan sebagai nilai kunci tatasusunan baharu, dan nilai kunci asal digunakan sebagai elemen tatasusunan baharu. Kodnya adalah seperti berikut:

$original_array = array("foo" => 1, "bar" => 2, "baz" => 3);
$new_array = array();
foreach ($original_array as $key => $value) {
   $new_array[$value] = $key;
}
print_r($new_array);
Salin selepas log masuk

Hasil output ialah: Array ( [1] => foo [2] => bar [3] => baz )

Kaedah ini melepasi foreach Gelung mencapai tujuan menukar nama kunci tatasusunan kepada nilai kunci dan memperoleh tatasusunan dengan nilai kunci baharu. Perlu diingatkan bahawa jika terdapat berbilang elemen dengan nilai kunci yang sama dalam tatasusunan asal, hanya nilai yang sepadan dengan nama kunci elemen terakhir akan dikekalkan dalam tatasusunan baharu, dan selebihnya akan ditimpa.

  1. Gunakan fungsi array_flip

Idea asas: Gunakan fungsi array_flip untuk membalikkan nama kunci dan nilai kunci ​​​​bagi tatasusunan asal, iaitu, tukar nama kunci kepada nilai kunci, dan tukar nilai kunci kepada nama Kunci. Kodnya adalah seperti berikut:

$original_array = array("foo" => 1, "bar" => 2, "baz" => 3);
$new_array = array_flip($original_array);
print_r($new_array);
Salin selepas log masuk

Hasil output ialah: Array ( [1] => foo [2] => bar [3] => baz )

Kaedah ini menggunakan fungsi array_flip membalikkan nama kunci dan nilai kunci tatasusunan asal, merealisasikan pertukaran nama kunci dan nilai kunci. Perlu diingatkan bahawa fungsi ini akan menggabungkan nilai yang sama dalam tatasusunan asal menjadi satu elemen, dan hanya akan mengekalkan nama kunci elemen terakhir sebagai nama kunci tatasusunan baharu, dan tidak akan mengekalkan nama kunci bagi sebarang elemen dalam tatasusunan asal.

  1. Gunakan fungsi array_map

Idea asas: gunakan fungsi array_map untuk memproses nama kunci setiap elemen, dan gunakan nama kunci asal sebagai nilai kunci tatasusunan baharu. Kodnya adalah seperti berikut:

$original_array = array("foo" => 1, "bar" => 2, "baz" => 3);
$new_array = array_map(function($key){return $key;}, $original_array);
print_r($new_array);
Salin selepas log masuk

Hasil output ialah: Array ([0] => foo [1] => bar [2] => baz )

Kaedah ini menggunakan fungsi array_map memproses nama kunci setiap elemen dan menggunakannya sebagai nilai kunci tatasusunan baharu, mencapai tujuan menukar nama kunci tatasusunan kepada nilai kunci. Perlu diingatkan bahawa tatasusunan yang dikembalikan melalui kaedah ini tidak menggunakan nilai utama tatasusunan asal sebagai elemen tatasusunan baharu, tetapi menggunakan nombor dari 0 hingga n sebagai nilai utama tatasusunan baharu Anda perlu memilih sama ada untuk menggunakan kaedah ini mengikut keperluan tertentu.

Ringkasan:

Artikel ini memperkenalkan tiga kaedah untuk menukar nama kunci tatasusunan kepada nilai kunci, yang dilaksanakan melalui gelung foreach, fungsi array_flip dan fungsi peta_tatasusunan. Ia adalah perlu untuk memilih kaedah yang sepadan untuk menyelesaikan masalah mengikut keperluan khusus. Pada masa yang sama, anda juga perlu memberi perhatian kepada pertindihan nama kunci dalam tatasusunan, serta masalah indeks berangka tatasusunan yang dikembalikan oleh fungsi array_map.

Atas ialah kandungan terperinci Cara menggunakan PHP untuk menukar nama kunci tatasusunan kepada nilai kunci. 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