Rumah >pembangunan bahagian belakang >masalah PHP >php menukar kunci tatasusunan

php menukar kunci tatasusunan

王林
王林asal
2023-05-07 15:31:10530semak imbas

Dalam PHP, anda boleh menggunakan fungsi array_keys() untuk mendapatkan semua kunci array, dan fungsi array_values() untuk mendapatkan semua nilai array. Melalui kedua-dua fungsi ini, anda boleh menukar nama kunci tatasusunan dengan mudah.

Kaedah 1: Gunakan fungsi array_combine()

fungsi array_combine() menggunakan nama kunci tatasusunan sebagai nilai tatasusunan baharu dan menggunakan nilai kunci tatasusunan sebagai kunci nama tatasusunan baharu. Oleh itu, anda boleh menggunakan fungsi array_keys() dan array_values() dahulu untuk mendapatkan nama kunci dan nilai kunci tatasusunan asal, kemudian gunakan fungsi array_combine() untuk menukar nama kunci dan nilai kunci kepada yang baharu tatasusunan, dan akhirnya gunakan fungsi unset() untuk memadam tatasusunan asal. Berikut ialah contoh kod:

// 原数组
$old_array = array(
    'id' => 1,
    'name' => 'Tom',
    'age' => 20,
);
// 获取原数组的键名和键值
$keys = array_keys($old_array);
$values = array_values($old_array);
// 将键名和键值转换成新数组
$new_array = array_combine($values, $keys);
// 删除原数组
unset($old_array);
// 输出新数组
print_r($new_array);

Laksanakan kod di atas, dan hasil output ialah:

Array
(
    [1] => id
    [Tom] => name
    [20] => age
)

Kod di atas menggunakan nama kunci tatasusunan asal sebagai nilai tatasusunan baharu , dan nilai kunci tatasusunan asal sebagai nama kunci tatasusunan baharu, berjaya melaksanakan operasi menukar nama kunci tatasusunan.

Kaedah 2: Gunakan fungsi array_flip()

fungsi array_flip() menggunakan nama kunci tatasusunan sebagai nilai tatasusunan baharu dan menggunakan nilai kunci tatasusunan sebagai kunci nama tatasusunan baharu. Oleh itu, anda boleh terus menggunakan fungsi array_flip() untuk menukar nama kunci dan nilai kunci tatasusunan asal, dan akhirnya menggunakan fungsi unset() untuk memadam tatasusunan asal.

// 原数组
$old_array = array(
    'id' => 1,
    'name' => 'Tom',
    'age' => 20,
);
// 将键名和键值交换
$new_array = array_flip($old_array);
// 删除原数组
unset($old_array);
// 输出新数组
print_r($new_array);

melaksanakan kod di atas, dan hasil output ialah:

Array
(
    [1] => id
    [Tom] => name
    [20] => age
)

Kod di atas secara langsung menggunakan fungsi array_flip() untuk menukar nama kunci dan nilai kunci tatasusunan asal, berjaya merealisasikan operasi menukar nama kunci tatasusunan.

Sama ada anda menggunakan fungsi array_combine() atau fungsi array_flip(), anda boleh menukar nama kunci tatasusunan dengan mudah. Pilih sahaja kaedah yang sesuai mengikut situasi sebenar untuk menjadikan kod lebih ringkas dan elegan.

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