Dalam PHP, tatasusunan ialah struktur data yang digunakan untuk menyimpan sekumpulan item data yang serupa. Setiap item data mempunyai kunci dan nilai. Kuncinya ialah pengecam unik yang digunakan untuk mengenal pasti item data, dan nilainya ialah nilai item data sebenar. Kadangkala, kita perlu menetapkan semula kod kunci dalam tatasusunan, ini boleh dilakukan dengan menggunakan beberapa fungsi terbina dalam PHP.
Array dalam PHP boleh dibuat dalam dua cara: tatasusunan bersekutu dan tatasusunan diindeks. Dalam tatasusunan bersekutu, kami boleh menetapkan nama kunci unik secara manual kepada setiap item data, manakala dalam tatasusunan diindeks, indeks berangka digunakan untuk mengenal pasti setiap item data.
Dalam tatasusunan bersekutu, jika kita ingin menetapkan semula kod kunci, kita boleh menggunakan fungsi array_keys(), array_values() dan array_combine(). Berikut ialah contoh menggunakan fungsi ini untuk menetapkan semula tatasusunan bersekutu:
$fruits = array('a'=> 'apple', 'b'=> 'banana', 'c'=> 'cherry'); $fruits = array_values($fruits); print_r($fruits);
Kod di atas akan mengeluarkan hasil berikut:
Array ( [0] => apple [1] => banana [2] => cherry )
Dalam contoh ini, kami menggunakan fungsi array_values() untuk menjana semula tatasusunan bersekutu lama menjadi tatasusunan diindeks baharu. Setiap item dalam tatasusunan baharu akan dikunci semula sebagai indeks berangka, bermula pada 0 dan naik ke nombor elemen terakhir.
$fruits = array('a'=> 'apple', 'b'=> 'banana', 'c'=> 'cherry'); $keys = array_keys($fruits); $new_keys = array('x', 'y', 'z'); $fruits = array_combine($new_keys, $fruits); print_r($fruits);
Kod di atas akan mengeluarkan hasil berikut:
Array ( [x] => apple [y] => banana [z] => cherry )
Dalam contoh ini, kami mula-mula menggunakan array_keys () mendapat semua kunci dalam tatasusunan lama, dan kemudian menggunakan fungsi array_combine() untuk menggabungkan kunci ini dengan nilai dalam tatasusunan baharu. Fungsi tatasusunan array_combine() mengambil dua tatasusunan sebagai input dan mengembalikan tatasusunan baharu, di mana nilai dalam tatasusunan pertama mewakili kunci tatasusunan baharu dan nilai dalam tatasusunan kedua mewakili nilai tatasusunan baharu tatasusunan. Oleh itu, kita boleh menggunakan fungsi ini untuk menjana semula tatasusunan bersekutu menjadi tatasusunan bersekutu dengan kunci baharu.
Dalam tatasusunan diindeks, kita perlu menggunakan fungsi array_values() dan array_combine() untuk menetapkan semula kod kunci. Berikut ialah contoh menggunakan fungsi ini untuk menetapkan semula tatasusunan yang diindeks:
$fruits = array('apple', 'banana', 'cherry'); $fruits = array_values($fruits); print_r($fruits);
Kod di atas akan mengeluarkan hasil berikut :
Array ( [0] => apple [1] => banana [2] => cherry )
Dalam contoh ini, kami menggunakan fungsi array_values() untuk menjana semula tatasusunan indeks lama ke dalam tatasusunan indeks baharu. Setiap item dalam tatasusunan baharu akan dikunci semula sebagai indeks berangka, bermula pada 0 dan naik ke nombor elemen terakhir.
$fruits = array('apple', 'banana', 'cherry'); $new_keys = array('x', 'y', 'z'); $fruits = array_combine($new_keys, $fruits); print_r($fruits);
Kod di atas akan mengeluarkan hasil berikut:
Array ( [x] => apple [y] => banana [z] => cherry )
Dalam contoh ini, kami menggunakan array_combine( ) fungsi menjana semula tatasusunan indeks lama menjadi tatasusunan bersekutu baharu. Kami menggunakan tatasusunan kunci baharu sebagai kunci tatasusunan baharu, dan nilai yang sepadan dengan setiap elemen dalam tatasusunan asal menjadi nilai tatasusunan baharu. Dengan pendekatan ini kita boleh menjana semula tatasusunan yang diindeks menjadi tatasusunan bersekutu dengan kunci baharu.
Ringkasan
Dalam artikel ini, kami memperkenalkan cara mengunci semula tatasusunan menggunakan fungsi terbina dalam dalam PHP. Sama ada tatasusunan bersekutu atau tatasusunan indeks, kita boleh menggunakan fungsi ini untuk menjana kod kunci baharu. Teknik ini boleh digunakan untuk membetulkan kesesakan prestasi yang berlaku apabila membaca tatasusunan yang sangat besar, kerana kod kunci yang tidak munasabah menyebabkan kelajuan akses tatasusunan menjadi perlahan. Oleh itu, kami harus sentiasa mencari peluang untuk mengoptimumkan kunci tatasusunan untuk meningkatkan prestasi dan kecekapan aplikasi PHP kami.
Atas ialah kandungan terperinci php array set semula kod kunci. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!