Rumah  >  Artikel  >  pembangunan bahagian belakang  >  php menukar kunci tatasusunan

php menukar kunci tatasusunan

PHPz
PHPzasal
2023-05-23 14:02:07469semak imbas

PHP ialah bahasa skrip berkuasa yang digunakan secara meluas dalam pembangunan web. Antaranya, tatasusunan ialah salah satu jenis data yang paling biasa digunakan dalam PHP Ia boleh menyimpan berbilang data dan mengindeksnya dalam bentuk pasangan nilai kunci. Apabila menggunakan tatasusunan, kadangkala anda perlu menukar nilai kunci tatasusunan Artikel ini akan memperkenalkan cara menukar kunci tatasusunan dalam PHP.

1. Tukar melalui fungsi array_combine()

Fungsi array_combine() digunakan untuk mencipta tatasusunan baharu Parameter pertama ialah nama kunci tatasusunan, dan parameter kedua ialah nilai utama tatasusunan. Kita boleh mencipta tatasusunan bersekutu baharu dengan menghantar tatasusunan yang mengandungi nama kunci dan nilai kunci sebagai parameter. Oleh itu, anda boleh menggunakan fungsi array_combine() untuk mencipta tatasusunan baharu, dan kemudian salin nilai dalam tatasusunan lama ke tatasusunan baharu untuk menukar nama kunci.

Berikut ialah contoh penggunaan kunci lama sebagai nama kunci baharu:

// 创建旧数组
$old_array = array(
    'name' => 'John',
    'age' => 25,
    'gender' => 'male'
);

// 创建新数组并更改键名
$new_keys = array('name', 'new_age', 'gender');
$new_array = array_combine($new_keys, $old_array);

print_r($new_array);

Dalam contoh ini, kita mula-mula mencipta tatasusunan lama. Kami kemudian mencipta tatasusunan baharu menggunakan fungsi array_combine() yang menghantar kekunci baharu sebagai hujah. Kekunci tatasusunan baharu termasuk "nama" dan "jantina" daripada tatasusunan lama, serta kunci baharu "zaman_baru". Kami akhirnya mengeluarkan tatasusunan baharu dengan kunci yang dikemas kini.

2. Tukar melalui gelung foreach

Menggunakan gelung foreach boleh menukar kunci tatasusunan secara lebih langsung. Kita boleh mengulangi setiap nilai dalam tatasusunan lama dan menyimpannya ke dalam tatasusunan baharu, menukar nama kunci. Berikut ialah contoh:

// 创建旧数组
$old_array = array(
    'name' => 'John',
    'age' => 25,
    'gender' => 'male'
);

// 创建新数组并更改键名
$new_array = array();
foreach($old_array as $key => $value) {
    $new_key = str_replace('age', 'new_age', $key);
    $new_array[$new_key] = $value;
}

print_r($new_array);

Contoh ini menukar kekunci "umur" dalam tatasusunan lama kepada kekunci "zaman_baru" dan menyimpan nilai kunci yang diubah ke dalam tatasusunan baharu. Dengan menggunakan gelung foreach, kita boleh lelaran melalui setiap elemen tatasusunan lama dan menukar nama kunci dalam setiap elemen.

3. Tukar melalui fungsi array_map()

Kita boleh menggunakan fungsi array_map() untuk menukar kunci tatasusunan. Fungsi ini akan melingkar melalui tatasusunan lama, menggunakan fungsi panggil balik pada setiap kekunci dan mengembalikan tatasusunan baharu. Oleh itu, kita boleh menggunakan fungsi panggil balik untuk membuat perubahan pada setiap nama kunci.

Berikut ialah contoh:

// 创建旧数组
$old_array = array(
    'name' => 'John',
    'age' => 25,
    'gender' => 'male'
);

// 创建新数组并更改键名
$new_array = array_map(function($key){
    if($key == 'age') {
        return 'new_age';
    } 
    return $key;
}, array_keys($old_array));

$new_array = array_combine($new_array, array_values($old_array));

print_r($new_array);

Dalam contoh ini, kita mula-mula menggunakan fungsi array_keys() untuk mendapatkan semua nama kunci dalam tatasusunan lama, dan kemudian gunakan fungsi array_map() untuk menggunakan fungsi panggil balik pada setiap nama kunci. Dalam fungsi panggil balik, kami menentukan sama ada nama kunci ialah "umur". Jika ya, kembalikan "new_age", jika tidak, kembalikan nama kunci asal.

Gunakan fungsi array_values() untuk mendapatkan semua nilai kunci dalam tatasusunan lama, dan akhirnya gunakan fungsi array_combine() untuk menggabungkan nama kunci baharu dan nilai kunci lama untuk membentuk tatasusunan baharu.

Ringkasan

Terdapat banyak cara untuk menukar kunci tatasusunan dalam php, kita boleh menggunakan fungsi array_combine(), foreach loop atau array_map() fungsi untuk mencapainya. Kaedah yang mana untuk dipilih bergantung pada senario penggunaan tertentu dan keperluan aplikasi Menguasai kaedah ini boleh menjadikan kita lebih fleksibel dalam menangani pelbagai masalah dalam pembangunan.

Atas ialah kandungan terperinci php menukar kunci tatasusunan. 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