Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk membalik susunan subskrip dalam tatasusunan dalam php

Bagaimana untuk membalik susunan subskrip dalam tatasusunan dalam php

PHPz
PHPzasal
2023-04-11 09:16:41500semak imbas

Dalam pembangunan PHP, kita selalunya perlu mengendalikan tatasusunan. Array ialah jenis data yang sangat berkuasa yang boleh menyimpan berbilang nilai dan mengakses nilai ini melalui subskrip. Biasanya, kami menggunakan nombor sebagai subskrip dalam tatasusunan. Tetapi kadangkala, kita perlu menggunakan jenis data lain sebagai subskrip. Dalam kes ini, kita perlu menukar susunan subskrip dalam tatasusunan.

Dalam PHP, membalikkan subskrip tatasusunan ialah tugas biasa. Ini bermakna, dalam tatasusunan, kita perlu menukar nilai subskrip kepada nilai yang mereka tunjuk pada masa ini. Lazimnya, kami akan menggunakan gelung untuk lelaran ke atas tatasusunan, dan kemudian menggunakan tatasusunan baharu untuk menyimpan nilai baharu setiap elemen pada setiap lelaran.

Berikut ialah contoh yang menunjukkan cara membalikkan subskrip tatasusunan:

$old_array = array('apple' => 1, 'banana' => 2, 'orange' => 3);
$new_array = array();
foreach ($old_array as $key => $value) {
    $new_array[$value] = $key;
}
print_r($new_array);

Dalam contoh di atas, kita mula-mula mentakrifkan tatasusunan dengan tiga elemen. Kami kemudian menggunakan gelung untuk lelaran melalui tatasusunan ini. Dalam setiap lelaran, kami menukar indeks dan nilai elemen dalam tatasusunan lama dan menyimpannya ke dalam tatasusunan baharu. Apabila keseluruhan tatasusunan lama dilalui, kami mendapat tatasusunan baharu yang subskripnya ialah nilai dalam tatasusunan asal, dan nilainya ialah subskrip dalam tatasusunan asal. Akhir sekali, kami menggunakan fungsi print_r untuk mencetak tatasusunan baharu.

Hasil keluaran adalah seperti berikut:

Array
(
    [1] => apple
    [2] => banana
    [3] => orange
)

Seperti yang dapat dilihat daripada hasil keluaran, subskrip dalam tatasusunan baharu telah menjadi nilai dalam tatasusunan lama, dan nilainya telah menjadi nilai dalam subskrip tatasusunan lama.

Selain contoh di atas, kita juga boleh menggunakan fungsi array_flip PHP sendiri untuk membalikkan subskrip tatasusunan. Fungsi ini adalah alat yang sangat berguna untuk menggunakan nilai dalam tatasusunan sebagai kunci dan kunci dalam tatasusunan sebagai nilai. Menggunakan fungsi array_flip membolehkan kami menyelak subskrip tatasusunan dengan lebih mudah tanpa menulis gelung.

Berikut ialah contoh penggunaan fungsi array_flip untuk membalikkan indeks tatasusunan:

$old_array = array('apple' => 1, 'banana' => 2, 'orange' => 3);
$new_array = array_flip($old_array);
print_r($new_array);

Dalam contoh ini, kita mula-mula mentakrifkan tatasusunan lama dengan tiga elemen. Kemudian, kita hantar tatasusunan ini ke fungsi array_flip. Fungsi ini mengembalikan tatasusunan baharu di mana kunci tatasusunan asal menjadi nilai dan nilai tatasusunan asal menjadi kunci. Akhir sekali, kami menggunakan fungsi print_r sekali lagi untuk mencetak tatasusunan baharu.

Hasil keluaran adalah seperti berikut:

Array
(
    [1] => apple
    [2] => banana
    [3] => orange
)

Seperti yang dapat dilihat daripada hasil keluaran ini, anda juga boleh membalikkan subskrip tatasusunan dengan mudah menggunakan fungsi array_flip terbina dalam PHP , dan tidak perlu menulis kitaran.

Untuk meringkaskan, membalikkan subskrip tatasusunan ialah tugas biasa dan terdapat pelbagai cara untuk mencapainya dalam PHP. Kaedah yang paling biasa ialah menggunakan gelung untuk melelar melalui tatasusunan dan kemudian menukar indeks dan nilai setiap elemen. Dan kita juga boleh menggunakan fungsi array_flip terbina dalam untuk membalikkan indeks tatasusunan dengan cepat. Tidak kira kaedah mana pun, kami boleh mengendalikan dan memproses tatasusunan dengan mudah.

Atas ialah kandungan terperinci Bagaimana untuk membalik susunan subskrip dalam tatasusunan 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