Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk menggantikan nama kunci tatasusunan dalam php

Bagaimana untuk menggantikan nama kunci tatasusunan dalam php

PHPz
PHPzasal
2023-04-18 10:25:14584semak imbas

Dalam PHP, tatasusunan ialah struktur data yang sangat penting yang sering digunakan untuk menyimpan dan memproses pelbagai jenis data. Dalam pembangunan sebenar, kita selalunya perlu mengendalikan tatasusunan untuk mencapai apa yang kita inginkan. Antaranya, menggantikan nama kunci tatasusunan adalah operasi biasa. Artikel ini akan memperkenalkan cara untuk menggantikan nama kunci tatasusunan dalam PHP, dan memberikan senario aplikasi praktikal untuk demonstrasi.

1. Tentukan tatasusunan

Sebelum mula memperkenalkan penggantian nama kunci tatasusunan, mari kita lihat dahulu cara mentakrifkan tatasusunan. Tatasusunan dalam PHP boleh ditakrifkan dalam dua cara, menggunakan fungsi tatasusunan() atau menggunakan simbol []. Berikut ialah kod sampel yang menggunakan fungsi tatasusunan() untuk mentakrif tatasusunan:

$arr = array(
    "name" => "张三",
    "age" => 25,
    "gender" => "男"
);

Tatasusunan bersekutu ditakrifkan di sini, yang mengandungi 3 elemen Setiap elemen mempunyai kunci dan nilai, yang mewakili a nama orang, umur dan jantina. Sudah tentu, terdapat jenis tatasusunan lain, jadi saya tidak akan menyenaraikan semuanya di sini.

2. Gantikan nama kunci tatasusunan

Berikut menerangkan cara menggantikan nama kunci tatasusunan. PHP menyediakan fungsi array_combine() yang sangat mudah, yang boleh menggabungkan dua tatasusunan menjadi tatasusunan bersekutu, dengan satu tatasusunan sebagai nama utama tatasusunan baharu dan tatasusunan lain sebagai nilai tatasusunan baharu. Sudah tentu, pastikan kedua-dua tatasusunan mempunyai bilangan elemen yang sama.

Kod sampel adalah seperti berikut:

$old_keys = array("name", "age", "gender");
$new_keys = array("student_name", "student_age", "student_gender");

$arr = array(
    "name" => "张三",
    "age" => 25,
    "gender" => "男"
);

$arr_with_new_keys = array_combine($new_keys, $arr);

Dalam contoh ini, kami mentakrifkan dua tatasusunan: $old_keys dan $new_keys. $old_keys mewakili nama kunci dalam tatasusunan asal, dan $new_keys mewakili nama kunci baharu yang akan diganti. Kemudian, kami mentakrifkan tatasusunan bersekutu $arr, iaitu tatasusunan yang kami perlukan untuk menggantikan nama kunci. Akhir sekali, kami menggunakan fungsi array_combine() untuk menggunakan $new_keys sebagai nama kunci tatasusunan baharu dan $arr sebagai nilai tatasusunan baharu, dengan itu memperoleh tatasusunan baharu $arr_with_new_keys dengan nama kunci diganti.

3. Senario Aplikasi

Jadi, apakah senario aplikasi praktikal untuk menggantikan nama kunci tatasusunan? Berikut ialah contoh Kami akan menunjukkan aplikasi menggantikan nama kunci tatasusunan melalui kes praktikal.

Andaikan kita mempunyai tatasusunan bersekutu dengan maklumat tentang pelajar, dan setiap pelajar mempunyai nombor pelajar yang unik sebagai kunci. Sekarang, kita perlu menggantikan nombor pelajar sebagai nama kunci dengan nama Pada masa ini, kita boleh menggunakan kaedah menggantikan nama kunci tatasusunan.

Kod sampel adalah seperti berikut:

$data = array(
    "20170101" => array(
        "name" => "张三",
        "age" => 20,
        "gender" => "男"
    ),
    "20170102" => array(
        "name" => "李四",
        "age" => 22,
        "gender" => "女"
    ),
    "20170103" => array(
        "name" => "王五",
        "age" => 21,
        "gender" => "男"
    )
);

$student_names = array();
foreach ($data as $key => $value) {
    $new_key = $value['name'];
    $data[$new_key] = $value;
    unset($data[$key]);
}

print_r($data);

Dalam contoh ini, kami mentakrifkan tatasusunan bersekutu $data, yang mengandungi maklumat 3 pelajar, dan ID pelajar setiap pelajar digunakan sebagai nama kunci yang unik. Kami ingin menggantikan nombor pelajar dengan nama itu, jadi kami menggunakan gelung foreach untuk melelaran melalui setiap elemen dalam tatasusunan $data.

Dalam gelung, kami mula-mula mendapatkan nama pelajar $value['name'] dan menetapkannya kepada $new_key. Kemudian kami menggunakan $new_key sebagai nama kunci baharu dan menetapkan nama kunci asal dan nilai yang sepadan kepada elemen baharu dalam tatasusunan $data, iaitu $data[$new_key] = $value. Akhir sekali, kami menggunakan fungsi unset() untuk memadamkan elemen asal daripada tatasusunan $data, iaitu unset($data[$key]).

Jalankan kod di atas, anda boleh mendapatkan hasil berikut:

Array
(
    [张三] => Array
        (
            [name] => 张三
            [age] => 20
            [gender] => 男
        )

    [李四] => Array
        (
            [name] => 李四
            [age] => 22
            [gender] => 女
        )

    [王五] => Array
        (
            [name] => 王五
            [age] => 21
            [gender] => 男
        )

)

Seperti yang anda lihat, nombor pelajar asal telah digantikan dengan nama pelajar, supaya kami boleh lebih mudah Pengurusan maklumat dan pertanyaan.

4. Ringkasan

Artikel ini memperkenalkan cara menggantikan nama kunci tatasusunan dalam PHP, serta senario aplikasi praktikal menggantikan nama kunci tatasusunan. Menggantikan nama kunci tatasusunan boleh menjadikan tatasusunan lebih mudah dibaca dan terurus, membolehkan kami mengendalikan data dalam tatasusunan dengan lebih mudah. Dalam pembangunan sebenar, kita harus memilih kaedah yang sesuai untuk mengendalikan tatasusunan mengikut keperluan khusus.

Atas ialah kandungan terperinci Bagaimana untuk menggantikan nama 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