ฟังก์ชัน uksort
ฟังก์ชัน uksort ทำการเรียงลำดับอาร์เรย์
ตามค่าของคีย์ โดยใช้
ฟังก์ชันคอลแบ็กเพื่อกำหนดลำดับ
ขององค์ประกอบในอาร์เรย์ที่เรียงลำดับแล้ว
ฟังก์ชันนี้จะเปลี่ยนแปลงอาร์เรย์เดิมโดยตรง
ฟังก์ชันเปรียบเทียบจะต้องส่งคืน จำนวนเต็ม ซึ่งขึ้นอยู่กับ ผลลัพธ์ของการเปรียบเทียบ: น้อยกว่า, เท่ากับ หรือมากกว่าศูนย์
ไวยากรณ์
uksort(array &$array, callable $callback): bool
ตัวอย่าง
มาเรียงลำดับอาร์เรย์ จากน้อยไปหามากตามคีย์กัน:
<?php
$arr = [
'b' => 1,
'e' => 3,
'c' => 2,
'a' => 5,
'd' => 4,
];
function func($a, $b)
{
if ($a === $b) {
return 0;
} else if ($a < $b) {
return -1;
} else {
return 1;
}
}
uksort($arr, 'func');
var_dump($arr);
?>
ผลลัพธ์การทำงานของโค้ด:
[
'a' => 5,
'b' => 1,
'c' => 2,
'd' => 4,
'e' => 3,
]
ดูเพิ่มเติม
-
ฟังก์ชัน
sort,
ซึ่งเรียงลำดับจากน้อยไปหามาตามค่าขององค์ประกอบ -
ฟังก์ชัน
rsort,
ซึ่งเรียงลำดับจากมากไปหาน้อยตามค่าขององค์ประกอบ -
ฟังก์ชัน
ksort,
ซึ่งเรียงลำดับจากน้อยไปหามากตามคีย์ -
ฟังก์ชัน
krsort,
ซึ่งเรียงลำดับจากมากไปหาน้อยตามคีย์ -
ฟังก์ชัน
asort,
ซึ่งเรียงลำดับจากน้อยไปหามากตามค่าขององค์ประกอบโดยรักษาคีย์ไว้ -
ฟังก์ชัน
arsort,
ซึ่งเรียงลำดับจากมากไปหาน้อยตามค่าขององค์ประกอบโดยรักษาคีย์ไว้ -
ฟังก์ชัน
natsort,
ซึ่งเรียงลำดับแบบธรรมชาติ -
ฟังก์ชัน
natcasesort,
ซึ่งเรียงลำดับแบบธรรมชาติโดยไม่สนใจตัวพิมพ์ใหญ่-เล็ก -
ฟังก์ชัน
usort,
ซึ่งเรียงลำดับโดยใช้ฟังก์ชันคอลแบ็ก -
ฟังก์ชัน
uksort,
ซึ่งเรียงลำดับโดยใช้ฟังก์ชันคอลแบ็กตามคีย์ -
ฟังก์ชัน
uasort,
ซึ่งเรียงลำดับโดยใช้ฟังก์ชันคอลแบ็กโดยรักษาคีย์ไว้ -
ฟังก์ชัน
array_multisort,
ซึ่งเรียงลำดับหลายอาร์เรย์พร้อมกัน