Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Tatasusunan PHP bersekutu songsang: amalan terbaik

Tatasusunan PHP bersekutu songsang: amalan terbaik

WBOY
WBOYasal
2024-04-28 21:48:021152semak imbas

Amalan terbaik untuk membalik tatasusunan PHP bersekutu termasuk menggunakan fungsi array_flip() terbina dalam. Untuk menggunakan fungsi array_combine(), anda perlu menghantar tatasusunan kunci dan nilai. Untuk tatasusunan kecil, anda boleh mengulang secara manual dan menetapkan kunci yang sepadan untuk setiap nilai dalam tatasusunan baharu.

Tatasusunan PHP bersekutu songsang: amalan terbaik

Terbalikkan Tatasusunan PHP Bersekutu: Amalan Terbaik

Dalam PHP, tatasusunan bersekutu ialah struktur data yang mengaitkan kunci dengan nilai. Kadangkala, kita mungkin perlu membalikkan struktur ini dan mendapatkan semula nilai dengan kunci. Berikut ialah beberapa amalan terbaik untuk membalikkan tatasusunan bersekutu:

Fungsi terbina dalam

PHP menyediakan fungsi array_flip() untuk membalikkan tatasusunan bersekutu dengan mudah. Ia mencipta tatasusunan baharu di mana nilai tatasusunan asal menjadi kunci dan kunci tatasusunan asal menjadi nilai. array_flip() 函数来轻松反转关联数组。它创建一个新数组,其中原始数组的值成为键,而原始数组的键成为值。

$original = ['name' => 'John', 'age' => 30];
$reversed = array_flip($original);

array_combine() 函数

另一种方法是使用 array_combine() 函数。与 array_flip() 类似,它创建一个新数组,但需要两个数组作为参数:一个用于键,另一个用于值。

$keys = array_keys($original);
$values = array_values($original);
$reversed = array_combine($values, $keys);

手动遍历

对于小型数组,可以使用手动遍历的方法。创建新数组,循环遍历原始数组,并将每个值设为新数组中对应的键。

$reversed = [];
foreach ($original as $key => $value) {
    $reversed[$value] = $key;
}

实战案例

假设我们有一个包含用户 ID 和姓名的数组:

$user_data = [
    1 => 'John',
    2 => 'Mary',
    3 => 'Bob'
];

我们可以使用 array_flip()

$reversed_user_data = array_flip($user_data);

fungsi array_combine()

🎜🎜Cara lain ialah menggunakan fungsi array_combine(). Seperti array_flip(), ia mencipta tatasusunan baharu, tetapi memerlukan dua tatasusunan sebagai argumen: satu untuk kunci dan satu untuk nilai. 🎜
echo $reversed_user_data['John']; // 输出:1
🎜🎜Manual traversal🎜🎜🎜Untuk tatasusunan kecil, anda boleh menggunakan kaedah manual traversal. Buat tatasusunan baharu, gelung melalui tatasusunan asal dan tetapkan setiap nilai kepada kunci yang sepadan dalam tatasusunan baharu. 🎜rrreee🎜🎜Contoh praktikal🎜🎜🎜Andaikan kita mempunyai tatasusunan yang mengandungi ID dan nama pengguna: 🎜rrreee🎜 Kita boleh menggunakan array_flip() untuk membalikkan tatasusunan ini untuk mencari ID pengguna mengikut nama pengguna: 🎜rrreee Kami kemudiannya boleh mencari ID pengguna mengikut nama pengguna melalui: 🎜rrreee

Atas ialah kandungan terperinci Tatasusunan PHP bersekutu songsang: amalan terbaik. 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