ฟังก์ชัน count_chars
ฟังก์ชัน count_chars นับความถี่
ของตัวอักขระต่างๆ ที่ปรากฏในสตริง
พารามิเตอร์แรกของฟังก์ชันรับสตริง และพารามิเตอร์ที่สองซึ่งเป็นตัวเลือก - โมดิไฟเออร์ (modifier) ซึ่งปรับเปลี่ยนผลลัพธ์การทำงานของฟังก์ชัน
ไวยากรณ์
count_chars(string $string, int $mode = 0): array|string
ค่าของโมดิไฟเออร์
ขึ้นอยู่กับค่าของพารามิเตอร์ ฟังก์ชันจะส่งคืนดังนี้:
-
ค่า
0- อาร์เรย์ ซึ่งมีคีย์เป็นรหัสASCIIและค่าเป็นจำนวนครั้งที่ตัวอักขระนั้นปรากฏ -
ค่า
1- เหมือนกับ0แต่ข้อมูลเกี่ยวกับตัวอักขระที่มีจำนวนการปรากฏเป็นศูนย์จะไม่รวมอยู่ในอาร์เรย์ -
ค่า
2- เหมือนกับ0แต่ในอาร์เรย์จะรวมข้อมูลเฉพาะตัวอักขระ ที่มีจำนวนการปรากฏเป็นศูนย์เท่านั้น -
ค่า
3- สตริง ที่ประกอบด้วยตัวอักขระซึ่งปรากฏในสตริงต้นทางอย่างน้อยหนึ่งครั้ง -
ค่า
4- สตริง ที่ประกอบด้วยตัวอักขระซึ่งไม่ ปรากฏในสตริงต้นทาง
โดยค่าเริ่มต้น ฟังก์ชันทำงานเสมือนว่า
พารามิเตอร์ที่สองถูกตั้งเป็น 0
ตัวอย่าง
ลองมานับจำนวน
ตัวอักขระในสตริง โดยตั้งค่า
โมดิไฟเออร์เป็น 1:
<?php
$str = 'aaabbc';
$res = count_chars($str, 1);
var_dump($res);
?>
ผลลัพธ์ที่ได้ ฟังก์ชันจะส่งคืนรหัส
ของตัวอักขระทั้งหมดตั้งแต่ 0 ถึง 255
และในบรรดารหัสเหล่านี้จะมีรหัสของ
ตัวอักขระจากสตริงของเรา:
[
0 => 0,
1 => 1,
...
97 => 3, // 97 รหัสของตัวอักขระ 'a'
98 => 2, // 98 รหัสของตัวอักขระ 'b'
99 => 1, // 99 รหัสของตัวอักขระ 'c'
...
255 => 0,
]
ตัวอย่าง
ลองมานับจำนวน
ตัวอักขระในสตริง โดยตั้งค่า
โมดิไฟเออร์เป็น 1:
<?php
$str = 'aaabbc';
$res = count_chars($str, 1);
var_dump($res);
?>
ผลลัพธ์ที่ได้ ฟังก์ชันจะส่งคืนเฉพาะรหัส ของตัวอักขระที่พบและจำนวน ของตัวอักขระเหล่านี้:
[
97 => 3, // 97 รหัสของตัวอักขระ 'a'
98 => 2, // 98 รหัสของตัวอักขระ 'b'
99 => 1, // 99 รหัสของตัวอักขระ 'c'
]
ดูเพิ่มเติม
-
ฟังก์ชัน
substr_count,
ซึ่งนับจำนวนสตริงย่อย -
ฟังก์ชัน
count_chars,
ซึ่งนับจำนวนตัวอักขระ -
ฟังก์ชัน
str_word_count,
ซึ่งนับจำนวนคำ