Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana Mengisih Tatasusunan Bersekutu mengikut Nilai dan Kunci dalam PHP?

Bagaimana Mengisih Tatasusunan Bersekutu mengikut Nilai dan Kunci dalam PHP?

Susan Sarandon
Susan Sarandonasal
2024-11-18 05:39:02693semak imbas

How to Sort an Associative Array by Values and Keys in PHP?

Mengisih Tatasusunan Bersekutu mengikut Nilai dan Kekunci

PHP menawarkan beberapa fungsi untuk menyusun tatasusunan. Dalam kes tatasusunan rata dan bersekutu dengan kunci ialah rentetan dan nilai adalah angka, fungsi array_multisort() menawarkan penyelesaian untuk mengisih mengikut kedua-dua nilai dan kekunci secara serentak.

Contoh:

Pertimbangkan perkara berikut tatasusunan:

$arrTags = [
    'mango' => 2,
    'orange' => 4,
    'apple' => 2,
    'banana' => 3
];

Output yang Diingini:

Kami berhasrat untuk mengisih tatasusunan ini dalam susunan nilai menurun dan kemudian dalam tertib menaik kekunci, menghasilkan dalam:

orange (4)
banana (3)
apple (2)
mango (2)

Penyelesaian:

array_multisort(array_values($arrTags), SORT_DESC, array_keys($arrTags), SORT_ASC, $arrTags);

Penjelasan:

  • array_values($arrTags) mengekstrak nilai sebagai berasingan tatasusunan.
  • SORT_DESC menentukan tertib menurun untuk nilai.
  • array_keys($arrTags) mengekstrak kunci sebagai tatasusunan berasingan.
  • SORT_ASC menyatakan tertib menaik untuk kunci.
  • Akhir sekali, nilai dan kunci yang diisih digabungkan kembali ke dalam tatasusunan asal menggunakan $arrTags.

Atas ialah kandungan terperinci Bagaimana Mengisih Tatasusunan Bersekutu mengikut Nilai dan Kunci 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