แนะนำการใช้งาน Function Sort ประเภทต่าง ๆ ของ PHP
Sort Array Value PHP
เหมาะสำหรับเรียงลำดับข้อมูลใน Array ที่ไม่ได้มีการกำหนดค่า key ของ Array ตัวอย่างเช่น
$testNumber = [4, 6, 2, 22, 11];
ในกรณีที่มีการกำหนด Key ให้กับ Array แล้วใช้ Function Sort เราจะได้ผลลัพธ์เหมือนกับตัวอย่างด้านล่าง
ตัวอย่าง sort();
$testNumber = [
'a' => 4,
'd' => 6,
'z' => 2,
'x' => 22,
'o' => 11
];
sort($testNumber); //เรียงค่าใน Array จาก น้อย - มาก / Key array หาย
print_r($testNumber);
'a' => 4,
'd' => 6,
'z' => 2,
'x' => 22,
'o' => 11
];
sort($testNumber); //เรียงค่าใน Array จาก น้อย - มาก / Key array หาย
print_r($testNumber);
ผลลัพธ์
Array
(
[0] => 2
[1] => 4
[2] => 6
[3] => 11
[4] => 22
)
Note: เมื่อทำการเรียงลำดับข้อมูลผ่าน Function sort(); จะสังเกตุได้ว่า Key ของ Array จะกลายเป็น 0,1,2 .....
ตัวอย่าง rsort();
$testNumber = [
'a' => 4,
'd' => 6,
'z' => 2,
'x' => 22,
'o' => 11
];
rsort($testNumber); //เรียงค่าใน Array จาก มาก - น้อย / Key array หาย
print_r($testNumber);
'a' => 4,
'd' => 6,
'z' => 2,
'x' => 22,
'o' => 11
];
rsort($testNumber); //เรียงค่าใน Array จาก มาก - น้อย / Key array หาย
print_r($testNumber);
ผลลัพธ์
Array
(
[0] => 22
[1] => 11
[2] => 6
[3] => 4
[4] => 2
)
Note: เมื่อทำการเรียงลำดับข้อมูลผ่าน Function rsort(); จะสังเกตุได้ว่า Key ของ Array จะกลายเป็น 0,1,2 .....
ตัวอย่าง asort();
$testNumber = [
'a' => 4,
'd' => 6,
'z' => 2,
'x' => 22,
'o' => 11
];
asort($testNumber); //เรียงค่าใน Array จาก น้อย - มาก / Key array ไม่หาย
print_r($testNumber);
'a' => 4,
'd' => 6,
'z' => 2,
'x' => 22,
'o' => 11
];
asort($testNumber); //เรียงค่าใน Array จาก น้อย - มาก / Key array ไม่หาย
print_r($testNumber);
ผลลัพธ์
Array
(
[z] => 2
[a] => 4
[d] => 6
[o] => 11
[x] => 22
)
Note: เมื่อทำการเรียงลำดับข้อมูลผ่าน Function asort(); จะสังเกตุได้ว่า Key ของ Array ยังคงเป็น Key เดิมก่อนเข้า Function อยู่
ตัวอย่าง arsort();
$testNumber = [
'a' => 4,
'd' => 6,
'z' => 2,
'x' => 22,
'o' => 11
];
arsort($testNumber); //เรียงค่าใน Array จาก มาก - น้อย / Key array ไม่หาย
print_r($testNumber);
'a' => 4,
'd' => 6,
'z' => 2,
'x' => 22,
'o' => 11
];
arsort($testNumber); //เรียงค่าใน Array จาก มาก - น้อย / Key array ไม่หาย
print_r($testNumber);
ผลลัพธ์
Array
(
[x] => 22
[o] => 11
[d] => 6
[a] => 4
[z] => 2
)
Note: เมื่อทำการเรียงลำดับข้อมูลผ่าน Function arsort(); จะสังเกตุได้ว่า Key ของ Array ยังคงเป็น Key เดิมก่อนเข้า Function อยู่
Sort Array Key PHP
เหมาะสำหรับเรียงลำดับข้อมูลใน Array ที่มีการกำหนดค่า key ของ Array ตัวอย่างเช่น
$testNumber = [
'a' => 4,
'd' => 6,
'z' => 2,
'x' => 22,
'o' => 11
];
'a' => 4,
'd' => 6,
'z' => 2,
'x' => 22,
'o' => 11
];
ตัวอย่าง ksort();
$testNumber = [
'a' => 4,
'd' => 6,
'z' => 2,
'x' => 22,
'o' => 11
];
ksort($testNumber); //เรียง key ใน Array จาก น้อย - มาก
print_r($testNumber);
'a' => 4,
'd' => 6,
'z' => 2,
'x' => 22,
'o' => 11
];
ksort($testNumber); //เรียง key ใน Array จาก น้อย - มาก
print_r($testNumber);
ผลลัพธ์
Array
(
[a] => 4
[d] => 6
[o] => 11
[x] => 22
[z] => 2
)
Note: การเรียงข้อมูลดำดับข้อมูลลักษณะนี้ส่วนใหญ่จะถูกใช้กรณีที่ดึงข้อมูลมากจากฐานข้อมูลและใช้ Key สำคัญในฐานข้อมูลมาเป็น Key ของ Array
ตัวอย่าง krsort();
$testNumber = [
'a' => 4,
'd' => 6,
'z' => 2,
'x' => 22,
'o' => 11
];
krsort($testNumber); //เรียง key ใน Array จาก มาก - น้อย
print_r($testNumber);
'a' => 4,
'd' => 6,
'z' => 2,
'x' => 22,
'o' => 11
];
krsort($testNumber); //เรียง key ใน Array จาก มาก - น้อย
print_r($testNumber);
ผลลัพธ์
Array
(
[z] => 2
[x] => 22
[o] => 11
[d] => 6
[a] => 4
)
Note: การเรียงข้อมูลดำดับข้อมูลลักษณะนี้ส่วนใหญ่จะถูกใช้กรณีที่ดึงข้อมูลมากจากฐานข้อมูลและใช้ Key สำคัญในฐานข้อมูลมาเป็น Key ของ Array
สรุปการใช้ Function sort PHP
sort()
- ใช้เรียกลำดับ Array Value น้อยไปมาก โดยที่จะทำการ Reindex array key ใหม่rsort()
- ใช้เรียกลำดับ Array Value มากไปน้อย โดยที่จะทำการ Reindex array key ใหม่asort()
- ใช้เรียกลำดับ Array Value น้อยไปมาก โดยคง array key เดิมไว้arsort()
- ใช้เรียกลำดับ Array Value มากไปน้อย โดยคง array key เดิมไว้ksort()
- ใช้เรียกลำดับ Array Key น้อยไปมากkrsort()
- ใช้เรียกลำดับ Array Key มากไปน้อย