Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk menetapkan kunci tatasusunan dalam PHP

Bagaimana untuk menetapkan kunci tatasusunan dalam PHP

PHPz
PHPzasal
2023-04-26 10:21:51773semak imbas

Dalam pengaturcaraan PHP, tatasusunan ialah salah satu struktur data yang paling biasa digunakan. Apabila menggunakan tatasusunan, kami biasanya menetapkan kunci untuk setiap elemen untuk membezakan elemen yang berbeza. Artikel ini akan memperkenalkan cara untuk menetapkan kunci tatasusunan dalam PHP.

Asas tatasusunan

Dalam PHP, tatasusunan boleh digunakan untuk menyimpan satu siri nilai. Tatasusunan boleh mengandungi berbilang elemen, setiap elemen mempunyai indeks yang unik. Indeks ini biasanya merupakan integer atau rentetan. Berikut ialah contoh tatasusunan menggunakan integer sebagai indeks:

$numbers = array(10, 20, 30, 40);

Tatasusunan ini mempunyai empat elemen, 10, 20, 30 dan 40. Indeks mereka ialah 0, 1, 2, dan 3 masing-masing.

Selain menggunakan indeks integer, kita juga boleh menggunakan rentetan sebagai indeks. Berikut ialah contoh tatasusunan menggunakan pengindeksan rentetan:

$person = array(
    "name" => "John",
    "age" => 30,
    "gender" => "male"
);

Tatasusunan ini mempunyai tiga elemen, nama, umur dan jantina. Nilai mereka ialah John, 30, dan lelaki.

Tetapkan kunci tatasusunan

Dalam contoh di atas, kita telah melihat cara menggunakan rentetan sebagai indeks ke dalam tatasusunan. Jika kita ingin menetapkan indeks baharu kepada elemen sedia ada, kita boleh menggunakan fungsi array_combine terbina dalam PHP. Fungsi ini boleh menerima dua tatasusunan sebagai parameter, tatasusunan pertama ialah indeks baharu, dan tatasusunan kedua ialah tatasusunan yang perlu diindeks. Berikut ialah contoh penggunaan fungsi array_combine untuk menetapkan indeks tatasusunan:

$numbers = array(10, 20, 30, 40);
$keys = array("a", "b", "c", "d");

$newArray = array_combine($keys, $numbers);
print_r($newArray);

Dalam kod di atas, kita mula-mula mencipta tatasusunan $numbers, yang mempunyai empat elemen, iaitu 10, 20 , dan 30 dan 40. Kemudian kita mencipta tatasusunan $keys dengan empat elemen rentetan, iaitu "a", "b", "c" dan "d". Akhir sekali, kami menggunakan fungsi array_combine untuk menggunakan tatasusunan $keys sebagai indeks baharu dan tatasusunan $numbers sebagai tatasusunan yang perlu diindeks untuk menjana tatasusunan baharu $newArray. Akhir sekali, kami mencetak kandungan $newArray:

Array (
    [a] => 10
    [b] => 20
    [c] => 30
    [d] => 40
)

Perhatikan bahawa fungsi array_combine memerlukan kedua-dua tatasusunan mesti mempunyai bilangan elemen yang sama. Jika kedua-dua tatasusunan mempunyai bilangan elemen yang berbeza, mesej amaran dijana.

Selain menggunakan fungsi array_combine, kita juga boleh menggunakan pernyataan tugasan untuk menetapkan indeks elemen tatasusunan. Berikut ialah contoh:

$numbers = array(10, 20, 30, 40);
$numbers["a"] = $numbers[0];
unset($numbers[0]);

print_r($numbers);

Dalam kod di atas, kita mula-mula mencipta tatasusunan $numbers, yang mempunyai empat elemen, iaitu 10, 20, 30 dan 40. Kemudian, kami menggunakan pernyataan tugasan untuk menetapkan nilai elemen 0 untuk mengindeks "a" dalam tatasusunan $numbers. Akhirnya, elemen 0 dialih keluar menggunakan fungsi unset. Akhir sekali, kami mencetak kandungan tatasusunan $numbers:

Array (
    [1] => 20
    [2] => 30
    [3] => 40
    [a] => 10
)

Dalam contoh di atas, kami menukar elemen dengan indeks 0 kepada elemen dengan indeks "a". Kaedah ini biasanya digunakan apabila pengindeksan tatasusunan perlu disusun semula.

Ringkasan

Dalam PHP, kita boleh menggunakan rentetan atau integer sebagai indeks tatasusunan. Jika anda perlu menetapkan indeks baharu untuk elemen sedia ada, anda boleh menggunakan fungsi array_combine. Jika anda perlu menyusun semula indeks sedia ada, anda boleh menggunakan penyata tugasan dan fungsi unset. Menguasai teknik ini akan membolehkan kami menggunakan tatasusunan PHP dengan lebih fleksibel.

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

Kenyataan:
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