Kaedah pengisihan tatasusunan pantas yang mengekalkan nama kunci dalam PHP

PHPz
Lepaskan: 2024-05-02 15:06:01
asal
968 orang telah melayarinya

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. Contoh praktikal: Untuk mengisih tatasusunan ID pengguna dan skor mengikut skor sambil mengekalkan ID pengguna, anda boleh menggunakan fungsi uasort() dan fungsi perbandingan tersuai.

PHP 中保留键名的快速数组排序方法

Kaedah pengisihan tatasusunan pantas dalam PHP yang mengekalkan nama utama

Dalam PHP, pengisihan tatasusunan biasanya merosakkan nama kunci. Walau bagaimanapun, kadangkala adalah penting untuk mengekalkan nama kunci asal. Di bawah disenaraikan beberapa cara untuk mengisih tatasusunan dengan cepat sambil mengekalkan nama kunci:

1 Gunakan pasangan fungsi ksort()ksort()

ksort() 函数对数组中的键进行排序,并保留原始键名。

$arr = ['apple' => 5, 'banana' => 1, 'cherry' => 3];
ksort($arr);
print_r($arr);
Salin selepas log masuk

输出:

Array
(
    [apple] => 5
    [banana] => 1
    [cherry] => 3
)
Salin selepas log masuk

2. 使用 uasort()

uasort()

ksort() Kekunci dalam. tatasusunan diisih, mengekalkan nama kunci asal.

function cmp($a, $b)
{
    return $a <=> $b;
}

$arr = ['apple' => 5, 'banana' => 1, 'cherry' => 3];
uasort($arr, "cmp");
print_r($arr);
Salin selepas log masuk

Output:

Array
(
    [banana] => 1
    [cherry] => 3
    [apple] => 5
)
Salin selepas log masuk

2 Gunakan fungsi uasort()

uasort() untuk mengisih tatasusunan bersekutu menggunakan fungsi perbandingan yang ditentukan pengguna semasa memelihara nama Kunci.

$scores = [
    'user1' => 85,
    'user2' => 90,
    'user3' => 75,
];

// 使用 uasort() 排序数组
function cmp($a, $b)
{
    return $a[1] <=> $b[1];
}

uasort($scores, "cmp");
Salin selepas log masuk
🎜Output: 🎜
Array
(
    [user3] => 75
    [user1] => 85
    [user2] => 90
)
Salin selepas log masuk
🎜🎜Kes praktikal🎜🎜🎜Andaikan anda mempunyai pelbagai ID pengguna dan markah yang sepadan. Anda perlu mengisih tatasusunan sambil mengekalkan ID pengguna. 🎜rrreee🎜 Tatasusunan yang diisih kini dalam tertib menaik mengikut skor sambil mengekalkan ID pengguna: 🎜rrreee

Atas ialah kandungan terperinci Kaedah pengisihan tatasusunan pantas yang mengekalkan nama kunci dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
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