PHP array_multisort() ฟังก์ชัน
ตัวอย่าง
ส่งกลับแถวที่เรียงลำดับตามเลขที่เพิ่มขึ้น:
<?php $a=array("Dog","Cat","Horse","Bear","Zebra"); array_multisort($a); print_r($a); ?>
คำนิยามและวิธีใช้
array_multisort() ฟังก์ชันส่งคืนตัวแปรตัวแยกเรียง คุณสามารถใส่หนึ่งหรือหลายตัวแปร ฟังก์ชันจะเรียงตัวแปรแรกเสียก่อน ตามด้วยตัวแปรอื่น ถ้ามีค่าเท่ากัน จะเรียงตัวแปรต่อไปตามลำดับ
หมายเหตุ:ชื่อกุญแจของตัวอักษรจะถูกกักตัว แต่ชื่อตัวเลขจะถูกปรับลำดับใหม่ จาก 0 และเพิ่มขึ้น 1
หมายเหตุ:คุณสามารถตั้งค่าลำดับและประเภทการจัดลำดับสำหรับแต่ละตัวแปรในแต่ละตัวแปร ถ้าไม่มีการตั้งค่า ตัวแปรในแต่ละตัวแปรจะใช้ค่าเริ่มต้น
รูปแบบ
array_multisort(array1,sorting order,sorting type,array2,array3...)
ตัวอักษร | รายละเอียด |
---|---|
array1 | จำเป็น กำหนดตัวแปร |
sorting order |
ทางเลือก กำหนดลำดับการจัดลำดับ ค่าที่เป็นไปได้:
|
sorting type |
ทางเลือก กำหนดประเภทการจัดลำดับ ค่าที่เป็นไปได้:
|
array2 | ทางเลือก กำหนดตัวแปร |
array3 | ทางเลือก กำหนดตัวแปร |
ชี้แจง
ฟังก์ชัน array_multisort() ใช้จัดลำดับหลายตัวแปรหรือตัวแปรสองมิติ
ตัวแปรในตัวอักษรที่มีอยู่ในตัวแปรจะถูกจัดลำดับเหมือนเดิม และถ้าตัวแปรในตัวอักษรที่มีอยู่ในตัวอักษรเหมือนกัน จะจัดลำดับตามขนาดของตัวแปรในตัวอักษรต่อไป และอย่างนั้นตามลำดับ
ตัวอักษรแรกคือตัวแปรแบบแรงยืนยัน และแต่ละตัวอักษรต่อมาอาจเป็นตัวแปรแบบแรงยืนยัน หรือเป็นหนึ่งในสัญญาณการจัดลำดับด้านล่าง (สัญญาณการจัดลำดับใช้เพื่อเปลี่ยนลำดับการจัดลำดับเริ่มต้น) ดังนี้:
- SORT_ASC - โดยเริ่มต้น จัดลำดับตามลำดับเพิ่มขึ้น (A-Z)
- SORT_DESC - จัดลำดับลดลง (Z-A)
หลังจากนั้นสามารถกำหนดประเภทการจัดลำดับได้:
- SORT_REGULAR - โดยเริ่มต้น。จัดลำดับรายการตามลำดับปกติ。
- SORT_NUMERIC - จัดลำดับรายการตามลำดับเลขาศาสตร์。
- SORT_STRING - จัดลำดับแต่ละรายการตามตำแหน่งอักษรในโลกภาษา
ข้อมูลเทคนิค
Value returned: | หากประสบความสำเร็จ จะส่งกลับ TRUE หากประสบความผิดพลาด จะส่งกลับ FALSE |
PHP Version: | 4+ |
บันทึกการปรับปรุง: |
ประเภทการเรียงลำดับ SORT_NATURAL และ SORT_FLAG_CASE ได้ถูกเพิ่มเข้ามาใน PHP 5.4 ประเภทการเรียงลำดับ SORT_LOCALE_STRING ได้ถูกเพิ่มเข้ามาใน PHP 5.3 |
ตัวอย่างเพิ่มเติม
ตัวอย่าง 1
ส่งกลับแถวที่เรียงลำดับตามเลขที่เพิ่มขึ้น:
<?php $a1=array("Dog","Cat"); $a2=array("Fido","Missy"); array_multisort($a1,$a2);; print_r($a1); print_r($a2); ?>
ตัวอย่าง 2
วิธีการเรียงลำดับเมื่อมีค่าที่เท่ากัน:
<?php $a1=array("Dog","Dog","Cat"); $a2=array("Pluto","Fido","Missy"); array_multisort($a1,$a2);; print_r($a1); print_r($a2); ?>
ตัวอย่าง 3
การเรียงลำดับด้วยตัวเลข:
<?php $a1=array("Dog","Dog","Cat"); $a2=array("Pluto","Fido","Missy"); array_multisort($a1,SORT_ASC,$a2,SORT_DESC);; print_r($a1); print_r($a2); ?>
ตัวอย่าง 4
เรียกมาครบรวมสองแถวของตัวเลขและเรียงลำดับลงลงหลังนี้:
<?php $a1=array(1,30,15,7,25); $a2=array(4,30,20,41,66); $num=array_merge($a1,$a2); array_multisort($num,SORT_DESC,SORT_NUMERIC);; print_r($num); ?>