ใน PHP จะมีบางตัวอักขระหรือบางสัญลักษณ์ที่ทำหน้าในการจัดการรูปแบบข้อความหรือจัดวางข้อความให้อยู่ในที่หรือรูปแบบที่ต้องการ หรือทำหน้าที่แยกแยะว่าข้อความหรือตัวแปร ซึ่งพวกนี้เมื่อใช้ฟังก์ชั่น printf() หรือ echo มาจะไม่เห็น เช่น \n \r \t <br> เป็นตั้น
ctype_graph() เป็นฟังก์ชันที่ใช้ในการตรวจสอบว่า ตัวอักขระหรือตัวอักษรต่างๆที่อยู่ใน string,หรือ ข้อความนั้น สามารถปริ้นต์หรือ echo ออกมาได้ไหมหรือเห็นไหม และจะส่งค่ากลับมาเป็น bool
ctype_print ( string $text ) : bool
ตัวอย่างการใช้งาน
<?php
$strings = array('string1' => "asdf\n\r\t", 'string2' => 'arf12', 'string3' => 'LKA#@%.54');
foreach ($strings as $name => $testcase) {
if (ctype_print($testcase)) {
echo "The string '$name' consists of all printable characters.\n";
} else {
echo "The string '$name' does not consist of all printable characters.\n";
}
}
?>
ผลลัพธ์ท่ี่ได้
The string 'string1' does not consist of all (visibly) printable characters.
The string 'string2' consists of all (visibly) printable characters.
The string 'string3' consists of all (visibly) printable characters.
ในผลลัพธ์ เราจะเห็นว่า string ตัวแรก มีค่าเท่ากับ false เพราะมีตัวอักขระ "\n\r\t" ที่ไม่ได้ทำหน้าเป็น text หรือตัวอักษรที่จะปริ้นต์ออกมา
ดังนั้น ฟังก์ชันนี้ อาจจะมีคนใช้ไม่บ่อยนัก นักพัฒนาต่างรู้ดีว่าอะไรที่สามารถปริ้นต์ได้บ้างและมีเพียงแค่ไม่กี่ตัวเท่านั้น จึงไม่จำเป็นต้องตรวจสอบ แต่ทั้งนี้ก็สามารถนำประยุกต์ใช้กระโปรเจ็คได้ เช่น ทำการตรวจเพื่อป้องกันไม่ผู้ใช้ใส่ค่าเหล่านี้เข้ามา เป็นต้น หวังว่าบทความจะมีประโยชน์ต่อผู้อ่าน่ะครับ