คำอธิบาย
ฟังก์ชัน strcoll() ใช้สำหรับเปรียบเทียบสตริงสองตัวตามกฎของ locale (การตั้งค่าภาษา/ภูมิภาค) ฟังก์ชันนี้คำนึงถึงตัวพิมพ์เล็ก-ใหญ่ (case-sensitive) และเหมาะสำหรับการเรียงลำดับสตริงในภาษาต่างๆ ที่มีกฎการเรียงที่แตกต่างกัน
รูปแบบการใช้งาน (Syntax)
strcoll(string $str1, string $str2): int
พารามิเตอร์
- str1 - สตริงแรกที่ต้องการเปรียบเทียบ
- str2 - สตริงที่สองที่ต้องการเปรียบเทียบ
ค่าที่คืนกลับ (Return Value)
- 0 - ถ้าสตริงทั้งสองเท่ากัน
- < 0 - ถ้า str1 น้อยกว่า str2 ตาม locale
- > 0 - ถ้า str1 มากกว่า str2 ตาม locale
ตัวอย่างการใช้งาน
ตัวอย่างที่ 1
<?php
setlocale(LC_COLLATE, 'en_US');
echo strcoll("Demo text!", "Demo text!");
?>ผลลัพธ์
0
ตัวอย่างที่ 2 - locale ญี่ปุ่น
<?php $x = 'a'; $y = 'A'; setlocale(LC_COLLATE, 'de_CH'); print "de_CH: " . strcoll($x, $y) . "\n"; ?>
ผลลัพธ์
de_CH: 32
หมายเหตุ: ต้องใช้ setlocale() ก่อนเพื่อตั้งค่า locale ให้ถูกต้อง