Rumah >pembangunan bahagian belakang >masalah PHP >Bagaimana untuk mengubah suai kunci tatasusunan bersekutu dalam php

Bagaimana untuk mengubah suai kunci tatasusunan bersekutu dalam php

PHPz
PHPzasal
2023-04-18 10:20:38506semak imbas

Tatasusunan bersekutu dalam PHP ialah jenis data yang sangat biasa digunakan, yang boleh digunakan untuk menyimpan pasangan nilai kunci. Apabila kita perlu mengubah suai kunci tatasusunan bersekutu, kita biasanya menghadapi beberapa masalah. Artikel ini akan memperkenalkan cara mengubah suai kunci tatasusunan bersekutu dalam PHP.

1. Gunakan fungsi array_combine()

Fungsi array_combine() PHP boleh menggabungkan dua tatasusunan menjadi tatasusunan bersekutu. Kita boleh menggunakan fungsi ini untuk mengubah suai kunci tatasusunan bersekutu. Langkah-langkah khusus adalah seperti berikut:

  1. Gunakan fungsi array_keys() untuk mendapatkan semua kunci array bersekutu dan simpannya dalam tatasusunan baharu
  2. Gunakan array_values(); fungsi untuk mendapatkan semua nilai tatasusunan bersekutu , disimpan ke dalam tatasusunan baharu yang lain;
  3. Gunakan fungsi array_combine() untuk menggabungkan tatasusunan kunci baharu dan tatasusunan nilai ke dalam tatasusunan bersekutu baharu.

Kodnya adalah seperti berikut:

// 原始数组
$original_array = array(
    'name' => 'Tom',
    'age' => 25,
    'gender' => 'male'
);

// 将原始数组中的key修改为新的值
$new_keys = array('name', 'years_old', 'gender');
$original_values = array_values($original_array);
$new_array = array_combine($new_keys, $original_values);

Dengan kod di atas, kita boleh menukar kekunci 'umur' dalam tatasusunan asal kepada 'years_old'.

2. Gelung untuk mengubah suai tatasusunan

Kita juga boleh menggunakan kaedah gelung untuk mengubah suai kunci dalam tatasusunan satu demi satu. Langkah-langkah khusus adalah seperti berikut:

  1. Gunakan gelung foreach untuk melintasi tatasusunan bersekutu
  2. Dalam badan gelung, gunakan fungsi unset() untuk memadamkan kunci asal dan semula; -tambah item menggunakan kekunci baharu.

Kodnya adalah seperti berikut:

// 原始数组
$original_array = array(
    'name' => 'Tom',
    'age' => 25,
    'gender' => 'male'
);

// 将原始数组中的key修改为新的值
$new_keys = array('name', 'years_old', 'gender');
foreach ($original_array as $key => $value) {
    unset($original_array[$key]);
    $modified_key = $new_keys[array_search($key, array_keys($original_array))];
    $original_array[$modified_key] = $value;
}

Dengan kod di atas, kita boleh menukar kunci 'umur' dalam tatasusunan asal kepada 'years_old'.

3. Gunakan fungsi array_map()

Kita juga boleh menggunakan fungsi array_map() untuk mengendalikan semua kekunci dalam bentuk fungsi. Langkah-langkah khusus adalah seperti berikut:

  1. Buat fungsi tanpa nama dan ubah suai kunci asal kepada kunci baharu di dalam fungsi
  2. Gunakan fungsi array_map() untuk memanggil fungsi di atas untuk mengubah suai semua kunci.

Kodnya adalah seperti berikut:

// 原始数组
$original_array = array(
    'name' => 'Tom',
    'age' => 25,
    'gender' => 'male'
);

// 将原始数组中的key修改为新的值
$new_keys = array('name', 'years_old', 'gender');
$new_array = array_map(function ($key) use ($new_keys) {
    $modified_key = $new_keys[array_search($key, array_keys($original_array))];
    return $modified_key;
}, array_keys($original_array));

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

Dengan kod di atas, kita boleh menukar kunci 'umur' dalam tatasusunan asal kepada 'years_old'.

Ringkasan:

Tiga kaedah di atas boleh digunakan untuk mengubah suai tatasusunan bersekutu dalam PHP Pemilihan kaedah khusus bergantung pada senario aplikasi yang berbeza. Jika terdapat lebih sedikit kunci yang perlu diubah suai, kita boleh memilih untuk menggunakan kaedah gelung jika terdapat lebih banyak kunci yang perlu diubah suai, kita boleh menggunakan fungsi array_combine() jika operasi pemprosesan yang lebih kompleks diperlukan untuk setiap kunci , anda boleh menggunakan array_map( )fungsi. Tidak kira kaedah mana yang digunakan, kita perlu memberi perhatian kepada beberapa pengetahuan PHP asas, seperti indeks tatasusunan, Nilai kunci, dsb.

Atas ialah kandungan terperinci Bagaimana untuk mengubah suai kunci tatasusunan bersekutu 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