Rumah > pembangunan bahagian belakang > masalah PHP > PHP menggantikan kunci tatasusunan

PHP menggantikan kunci tatasusunan

WBOY
Lepaskan: 2023-05-06 12:19:07
asal
521 orang telah melayarinya

Dalam PHP, jika kita perlu menukar nama satu atau lebih kunci dalam tatasusunan bersekutu, kita boleh menggunakan fungsi "array_keys()" dan "array_combine()" untuk mencapai penggantian kunci array.

Dalam artikel ini, kami akan menerangkan cara menggunakan kedua-dua fungsi ini untuk menggantikan satu atau lebih kekunci dalam tatasusunan bersekutu dalam PHP. Kami akan membincangkan topik berikut:

  1. Cara menggunakan fungsi “array_keys()” untuk mendapatkan semua kunci dalam tatasusunan bersekutu
  2. Cara menggabungkan nilai yang diganti menggunakan fungsi “array_combine()” ke dalam tatasusunan baharu
  3. Cara untuk menggantikan nama berbilang kunci
  4. Amalan dan pertimbangan terbaik
  5. Cara menggunakan "array_keys()" fungsi untuk mendapatkan semua kunci dalam tatasusunan bersekutu

Apabila menggantikan kunci tatasusunan bersekutu dalam PHP, kita perlu menggunakan fungsi "array_keys()" untuk mendapatkan semua kunci dalam tatasusunan asal. Ini akan mengembalikan tatasusunan baharu yang mengandungi semua kunci tatasusunan asal.

Berikut ialah contoh kod cara menggunakan fungsi "array_keys()" untuk mendapatkan semua kunci dalam tatasusunan bersekutu:

<?php
$orig_array = array(
   'name' => 'john',
   'age' => 34,
   'city' => 'New York'
);

$keys = array_keys($orig_array);
print_r($keys);
?>
Salin selepas log masuk

Kod di atas akan mengeluarkan keputusan berikut:

Array
(
   [0] => name
   [1] => age
   [2] => city
)
Salin selepas log masuk

Seperti di atas Seperti yang dinyatakan di atas, kami menggunakan fungsi "array_keys()" untuk mendapatkan semua kunci dalam tatasusunan bersekutu. Sekarang kita boleh menggunakan kekunci ini untuk menukar nama kunci dalam tatasusunan bersekutu.

  1. Bagaimana untuk menggabungkan nilai yang digantikan ke dalam tatasusunan baharu menggunakan fungsi "array_combine()"

Sekarang kita telah mendapat semua kunci tatasusunan bersekutu yang kita mahu menggantikan , mari lihat cara menggabungkan nilai yang digantikan ke dalam tatasusunan baharu menggunakan fungsi "array_combine()".

Fungsi "array_combine()" menggabungkan dua tatasusunan menjadi satu tatasusunan, di mana nilai-nilai dalam satu tatasusunan akan digunakan sebagai kunci tatasusunan baharu dan nilai-nilai dalam tatasusunan yang lain akan digunakan sebagai nilai tatasusunan baharu. Jadi kami akan menggunakan fungsi ini untuk menambah kunci baharu dan nilai lama pada tatasusunan baharu.

Berikut ialah contoh kod untuk menggantikan tatasusunan bersekutu PHP dengan nama kunci baharu:

<?php
$orig_array = array(
   'name' => 'john',
   'age' => 34,
   'city' => 'New York'
);

$keys = array_keys($orig_array);

$new_keys = array(
   'first_name',
   'age',
   'location'
);

$replaced_array = array_combine($new_keys, $orig_array);
print_r($replaced_array);
?>
Salin selepas log masuk

Kod di atas akan mengeluarkan hasil berikut:

Array
(
   [first_name] => john
   [age] => 34
   [location] => New York
)
Salin selepas log masuk

Seperti yang dinyatakan di atas, kami Gunakan fungsi "array_combine()" menghantar kunci baharu dan nilai lama sebagai dua parameter. Fungsi ini mengembalikan tatasusunan baharu dengan kekunci lama digantikan dengan yang baharu.

  1. Cara untuk menggantikan berbilang nama kunci

Anda mungkin perlu menggantikan berbilang nama kunci sekaligus. Dalam kes ini, lebih baik menggunakan pernyataan gelung untuk menggantikan setiap nama kunci dengan nama kunci baharu.

Berikut ialah contoh penyataan gelung untuk menggantikan kunci dalam pelbagai tatasusunan bersekutu PHP dengan nama kunci baharu:

<?php
$orig_array = array(
   'name' => 'john',
   'age' => 34,
   'city' => 'New York',
   'job' => 'developer'
);

$keys = array_keys($orig_array);

$new_keys = array(
   'first_name',
   'age',
   'location',
   'profession'
);

$replaced_array = array();

foreach($orig_array as $key => $value) {
   $new_key = array_search($key, $keys);
   $replaced_array[$new_keys[$new_key]] = $value;
}

print_r($replaced_array);
?>
Salin selepas log masuk

Kod di atas akan mengeluarkan keputusan berikut:

Array
(
   [first_name] => john
   [age] => 34
   [location] => New York
   [profession] => developer
)
Salin selepas log masuk

Seperti yang ditunjukkan di atas, dalam kod di atas, kami telah menggunakan pernyataan gelung yang berulang melalui kandungan tatasusunan asal dan menambah nama kunci baharu untuk setiap nama kunci selepas penggantian.

  1. Amalan dan Pertimbangan Terbaik
  • Sebelum anda mula menggantikan tatasusunan bersekutu PHP, pastikan anda mempunyai sandaran tatasusunan asal. Ini akan memudahkan untuk mencari tatasusunan asal apabila anda memerlukannya.
  • Apabila menukar kekunci tatasusunan, pastikan nama kunci baharu tidak sama dengan nama kunci asal. Jika tidak, nama kunci baharu akan menimpa nilai lama.
  • Jika anda mempunyai berbilang tatasusunan bersekutu PHP yang perlu diubah, sebaiknya buat fungsi berasingan untuk pernyataan gelung.

Ringkasan:

Dalam PHP, anda boleh menggantikan kekunci tatasusunan bersekutu menggunakan fungsi “array_keys()” dan “array_combine()”. Menggunakan fungsi ini, anda boleh menukar satu atau lebih nama kunci dengan mudah dalam tatasusunan bersekutu. Ambil perhatian bahawa anda harus menyandarkan tatasusunan asal dan sentiasa membezakan nama kunci baharu daripada nama kunci lama. Selain itu, jika anda mempunyai berbilang tatasusunan bersekutu PHP yang perlu diubah, maka adalah lebih baik untuk mencipta fungsi berasingan untuk pernyataan gelung, yang akan menjadikan kod anda lebih cekap dan lebih mudah untuk diselenggara.

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

sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan