


PHP Bagaimana untuk mengisih tatasusunan mengikut nilai sambil mengekalkan nama kunci asal?
PHP menyediakan dua cara untuk mengisih tatasusunan bersekutu mengikut nilai: Gunakan fungsi asort(): Isih nilai dari kecil ke besar sambil mengekalkan nama kunci asal. Menggunakan fungsi usort() dan penutupan: Isih nilai mengikut fungsi perbandingan tersuai sambil mengekalkan nama kunci asal.
Gunakan fungsi asort()
asort()
函数
PHP 的 asort()
函数可按值对关联数组进行排序,同时保留原始键名。它接受一个关联数组作为参数,并按照从小到大的顺序对值进行排序。
<?php $arr = [ "apple" => 5, "banana" => 3, "orange" => 2, "grape" => 4, ]; asort($arr); print_r($arr); ?>
输出:
Array ( [orange] => 2 [banana] => 3 [grape] => 4 [apple] => 5 )
如你所见,数组的值已按从小到大的顺序排序,但键名保留不变。
使用 usort()
函数和闭包
另一种方法是使用 usort()
函数和闭包。usort()
接受一个回调函数作为参数,该函数用于比较数组中的元素。闭包是一种匿名函数,可用作回调。
<?php $arr = [ "apple" => 5, "banana" => 3, "orange" => 2, "grape" => 4, ]; usort($arr, function ($a, $b) { return $a[1] - $b[1]; }); print_r($arr); ?>
输出:
Array ( [orange] => 2 [banana] => 3 [grape] => 4 [apple] => 5 )
在这种情况下,闭包会比较每个元素的值 ($a[1]
和 $b[1]
),并返回 -1
、0
或 1
asort()
PHP mengisih tatasusunan bersekutu mengikut nilai sambil mengekalkan nama kunci asal. Ia menerima tatasusunan bersekutu sebagai hujah dan mengisih nilai daripada terkecil kepada terbesar. 🎜rrreee🎜Output: 🎜rrreee🎜Seperti yang anda lihat, nilai tatasusunan telah diisih dari kecil ke besar, tetapi nama kunci kekal tidak berubah. 🎜🎜🎜Gunakan fungsi dan penutupan usort()
🎜🎜Cara lain ialah menggunakan fungsi dan penutupan usort()
. usort()
menerima fungsi panggil balik sebagai parameter, yang digunakan untuk membandingkan elemen dalam tatasusunan. Penutupan ialah fungsi tanpa nama yang boleh digunakan sebagai panggilan balik. 🎜rrreee🎜Output: 🎜rrreee🎜Dalam kes ini, penutupan membandingkan nilai setiap elemen ($a[1]
dan $b[1]
) , dan mengembalikan -1
, 0
atau 1
, bergantung pada nilai yang lebih besar. 🎜Atas ialah kandungan terperinci PHP Bagaimana untuk mengisih tatasusunan mengikut nilai sambil mengekalkan nama kunci asal?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Kaedah pengisihan tatasusunan pantas dalam PHP yang mengekalkan nama kunci: Gunakan fungsi ksort() untuk mengisih kekunci. Gunakan fungsi uasort() untuk mengisih menggunakan fungsi perbandingan yang ditentukan pengguna. Kes praktikal: Untuk mengisih tatasusunan ID pengguna dan skor mengikut skor sambil mengekalkan ID pengguna, anda boleh menggunakan fungsi uasort() dan fungsi perbandingan tersuai.

Untuk memahami secara mendalam pengisihan tatasusunan JS: prinsip dan mekanisme kaedah sort(), contoh kod khusus diperlukan Pengenalan: Pengisihan tatasusunan ialah salah satu operasi yang sangat biasa dalam kerja pembangunan bahagian hadapan harian kami. Kaedah pengisihan tatasusunan sort() dalam JavaScript ialah salah satu kaedah pengisihan tatasusunan yang paling biasa digunakan. Walau bagaimanapun, adakah anda benar-benar memahami prinsip dan mekanisme kaedah sort()? Artikel ini akan memberi anda pemahaman yang mendalam tentang prinsip dan mekanisme pengisihan tatasusunan JS, dan memberikan contoh kod khusus. 1. Penggunaan asas kaedah sort().

Pantulan pergi boleh digunakan untuk melintasi dan mengubah suai medan struktur. Lintasan medan: Gunakan reflect.TypeOf dan reflect.Field untuk melintasi medan struktur. Pengubahsuaian medan: Akses dan ubah suai nilai medan struktur melalui Elem dan Set. Kes praktikal: Gunakan pantulan untuk menukar struktur kepada peta, dan kemudian tukar peta kepada JSON.

Cara mengisih tatasusunan mengikut nilai dalam PHP sambil mengekalkan nama kunci ialah menggunakan fungsi usort() untuk mengisih tatasusunan mengikut nilai. Lulus fungsi tanpa nama kepada fungsi usort() sebagai fungsi perbandingan, yang mengembalikan perbezaan nilai elemen. usort() akan mengisih tatasusunan mengikut fungsi tanpa nama sambil mengekalkan nama kunci tidak berubah.

Bagaimana untuk menulis algoritma pengisihan tatasusunan PHP tersuai? Isih gelembung: Mengisih tatasusunan dengan membandingkan dan menukar elemen bersebelahan. Isih pilihan: Pilih elemen terkecil atau terbesar setiap kali dan tukarkannya dengan kedudukan semasa. Isih sisipan: Masukkan unsur satu demi satu ke dalam bahagian yang diisih.

Cara menggunakan PHP untuk membangunkan bar navigasi ringkas dan fungsi koleksi laman web Bar navigasi dan fungsi koleksi laman web adalah salah satu fungsi biasa dan praktikal dalam pembangunan web. Artikel ini akan memperkenalkan cara menggunakan bahasa PHP untuk membangunkan bar navigasi ringkas dan fungsi pengumpulan URL, dan menyediakan contoh kod khusus. Cipta antara muka bar navigasi Mula-mula, kita perlu mencipta antara muka bar navigasi. Bar navigasi biasanya mengandungi pautan untuk navigasi pantas ke halaman lain. Kita boleh menggunakan HTML dan CSS untuk mereka bentuk dan mengatur pautan ini. Berikut ialah antara muka bar navigasi yang mudah

Dalam PHP, gunakan fungsi uasort() untuk mengisih tatasusunan mengikut peraturan pengisihan tersuai sambil mengekalkan nama kunci asal. Fungsi perbandingan tersuai ialah fungsi yang mengambil dua elemen sebagai input dan mengembalikan integer: nombor negatif bermakna yang pertama adalah kurang daripada yang kedua, sifar bermakna ia adalah sama dan nombor positif bermakna yang pertama lebih besar daripada yang kedua.

Tutorial PHP dan GMP: Cara Melaksanakan Pendaraban Nombor Besar Pengenalan: Apabila kita perlu berurusan dengan integer besar dalam pengaturcaraan, jenis integer biasa tidak dapat memenuhi keperluan. Dalam PHP, sambungan GMP (GNUMultiplePrecision) menyediakan keupayaan untuk mengendalikan integer ketepatan sewenang-wenangnya. Tutorial ini akan memberi tumpuan kepada cara menggunakan sambungan GMP PHP untuk melaksanakan pendaraban nombor besar. Pasang dan dayakan sambungan GMP Sebelum kita bermula, kita perlu memastikan bahawa PHP telah memasang dan mendayakan sambungan GMP. OK
