Rumah > pembangunan bahagian belakang > masalah PHP > Bagaimana untuk menukar tatasusunan kepada nilai kunci dalam php

Bagaimana untuk menukar tatasusunan kepada nilai kunci dalam php

PHPz
Lepaskan: 2023-04-20 09:11:54
asal
1787 orang telah melayarinya

Dalam PHP, tatasusunan ialah struktur data yang digunakan untuk menyimpan berbilang nilai. Setiap elemen tatasusunan mempunyai kunci dan nilai. Kuncinya ialah indeks yang digunakan untuk mengakses nilai dan boleh menjadi rentetan atau integer. Jika anda ingin menukar tatasusunan kepada nilai utama, anda perlu mengikut peraturan tertentu.

1. Tukar tatasusunan kepada nilai kunci

Pertama, kita perlu mencipta tatasusunan yang mengandungi kunci dan nilai. Berikut ialah contoh:

$array = array(
    "name" => "John",
    "age" => 30,
    "city" => "New York"
);
Salin selepas log masuk

Tatasusunan ini mengandungi tiga pasangan nilai kunci. Setiap pasangan kunci-nilai terdiri daripada kunci dan nilai. Kekunci tatasusunan boleh berupa rentetan atau integer. Dalam contoh di atas, kunci ialah rentetan dan nilainya ialah nilai jenis campuran (rentetan dan integer).

Untuk menukar tatasusunan ini kepada kunci, kita boleh menggunakan fungsi array_keys() dalam PHP. Fungsi ini menerima tatasusunan sebagai hujah dan mengembalikan semua kunci dalam tatasusunan. Sebagai contoh, berikut ialah contoh menggunakan fungsi array_keys() untuk menukar tatasusunan kepada nilai kunci:

$keys = array_keys($array);
Salin selepas log masuk

Dalam contoh ini, pembolehubah $keys akan mengandungi semua kunci dalam tatasusunan. Mengeluarkan pembolehubah ini ke skrin akan memberikan hasil berikut:

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

2 Pemisahan kunci dan nilai

Untuk menukar tatasusunan kepada nilai kunci, kita perlu memisahkannya. kunci dan nilai. Kita boleh menggunakan gelung foreach dalam PHP untuk melelaran melalui tatasusunan dan mengekstrak kunci dan nilai daripadanya. Kita boleh melakukan ini menggunakan kod berikut:

foreach($array as $key=>$value){
    echo $key.' => '.$value.'<br/>';
}
Salin selepas log masuk

Dalam contoh ini, $array ialah tatasusunan yang ingin kita ulangi. Di dalam badan gelung, pembolehubah $key akan mengandungi kunci elemen tatasusunan, dan pembolehubah $value akan mengandungi nilai elemen. Contoh ini akan berulang melalui tatasusunan dan mengeluarkan kunci dan nilai setiap elemen.

3. Cipta tatasusunan pasangan nilai kunci

Setelah kami mengekstrak kunci dan nilai daripada tatasusunan, kami boleh menggunakannya untuk mencipta tatasusunan pasangan nilai kunci. Kita boleh melakukan ini menggunakan fungsi array_combine() dalam PHP. Fungsi ini memerlukan dua parameter. Parameter pertama ialah tatasusunan kunci dan parameter kedua ialah tatasusunan nilai. Sebagai contoh, berikut ialah contoh menggunakan fungsi array_combine() untuk menukar tatasusunan kepada pasangan nilai kunci:

$keys = array_keys($array);
$values = array_values($array);
$new_array = array_combine($keys, $values);
Salin selepas log masuk

Dalam contoh ini, pembolehubah $keys mengandungi semua kunci dalam tatasusunan dan $values ​​​​variable mengandungi semua nilai. Fungsi array_combine() akan mencipta tatasusunan baharu pasangan nilai kunci daripada tatasusunan ini. Mengeluarkan pembolehubah ini ke skrin akan memberikan hasil berikut:

Array
(
    [name] => John
    [age] => 30
    [city] => New York
)
Salin selepas log masuk

4. Aplikasi Praktikal

Sekarang, kami telah memahami kaedah asas untuk menukar tatasusunan kepada nilai utama. Mari lihat cara menggunakannya dalam aplikasi praktikal. Sebagai contoh, katakan kami mempunyai senarai pengguna dengan setiap ID, nama dan alamat e-mel pengguna. Kita boleh menggunakan tatasusunan berikut untuk mewakili:

$users = array(
    array("id" => 1, "name" => "John", "email" => "john@example.com"),
    array("id" => 2, "name" => "Mary", "email" => "mary@example.com"),
    array("id" => 3, "name" => "Tom", "email" => "tom@example.com")
);
Salin selepas log masuk

Tatasusunan ini mengandungi tiga subtatasusunan, setiap subtatasusunan mewakili pengguna. Setiap subarray mengandungi tiga pasangan nilai kunci, yang mewakili ID pengguna, nama dan alamat e-mel. Jika kami ingin mencipta tatasusunan pasangan nilai kunci berdasarkan ID pengguna, kami boleh berbuat demikian menggunakan kod berikut:

$id_array = array();
foreach($users as $user){
    $id = $user['id'];
    $id_array[$id] = $user;
}
Salin selepas log masuk

Dalam contoh ini, pembolehubah $id_array ialah tatasusunan kosong. Dalam gelung foreach, kami mengulangi tatasusunan $users dan mengekstrak ID daripada setiap sub-tatasusunan. Kami kemudian menggunakan ID itu sebagai kunci untuk tatasusunan baharu dan menyimpan keseluruhan subarray sebagai nilai di bawah kunci itu. Mengeluarkan pembolehubah ini ke skrin akan memberikan hasil berikut:

Array
(
    [1] => Array
        (
            [id] => 1
            [name] => John
            [email] => john@example.com
        )

    [2] => Array
        (
            [id] => 2
            [name] => Mary
            [email] => mary@example.com
        )

    [3] => Array
        (
            [id] => 3
            [name] => Tom
            [email] => tom@example.com
        )

)
Salin selepas log masuk

Ringkasan:

Susun atur dalam PHP ialah struktur data fleksibel yang boleh digunakan untuk menyimpan berbilang nilai. Jika anda perlu menukar tatasusunan kepada nilai utama, anda boleh menggunakan helah di atas. Mula-mula gunakan fungsi array_keys() untuk mengekstrak kunci dalam tatasusunan, kemudian gunakan gelung foreach untuk lelaran melalui tatasusunan dan mengekstrak kunci dan nilai. Akhir sekali, kunci dan nilai digabungkan menjadi tatasusunan baru pasangan nilai kunci menggunakan fungsi array_combine().

Atas ialah kandungan terperinci Bagaimana untuk menukar tatasusunan kepada nilai kunci dalam php. 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