ดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งาน
 

ใน PHP มีฟังก์ชั่นที่ใช้การตรวจสอบค่าต่างๆมากมาย ไม่ว่าจะเป็น ฟังก์ชั่น isset() : ใช้ในการตรวจสอบว่าตัวแปลที่กำหนดมีการ เซ็ตไว้หรือไม่ หรือ ฟังก์ชัน ctype_digit() : ใช้สำหรับตรวจสอบตัวเลข หรือ ตรวจสอบทำงานได้อย่างถูกต้องไหม เป็นต้น และสำหรับบทความนี้ เราจะมาเรียนรู้ฟังก์ชัน ctype_alpha() ซึ่งเป็นฟังก์ชันที่ใช้ในการตรวจสอบอักขระที่เป็นตัวอักษรเท่านั้น ในที่นี้หมายถึง A/a-Z/z และจะส่งค่าเป็น bool เท่านั้น
เช่น ถ้าพบว่า ใน string นั้น มีเพียงตัวอักษร จะส่งค่ากลับมาเป็น true ในทางกลับกัน หากพบว่ามีตัวอักระอื่นๆเช่น สัญลักษณ์ต่างๆ ตัวเลข เข้ามาแทรกส่วนใดส่วนหนึ่งหรือทั้งหมดของ string จะส่งค่ากลับมาเป็น false

ctype_alpha ( string $text ) : bool

เรามาดูตัวอย่างโค้ดน่ะครับ

<?php
$str = "my age is 21";
$str1 = "My name is genetic";
$str2 = "MyNameIsGenetic";
if(ctype_alpha($str)){
    echo "str= true <br>";
}else{
    echo "str = false <br>";
}

if(ctype_alpha($str1)){
    echo "str1 = true <br>";
}else{
    echo "str1 = false <br>";
}
if(ctype_alpha($str2)){
    echo "str2 = true <br>";
}else{
    echo "str2 = false <br>";
}
?>

ผลลัพธ์ที่ได้

str = false 
str1 = false 
str2 = true 

จากตัวอย่างจะเห็นว่า ในตัวแปร $str นั้นพบว่า มีตัวเลข 21 อยู่ จึงคืนค่าเป็น FALSE 

ส่วนในตัวแปร $str1 นั้นมีเฉพาะตัวอักษรแต่ทำไมถึงค่าออกมาเป็น FALSE ก็เพราะว่ามีช่องว่าง (space) นั้นไม่ถือว่าเป็นอักษรนั่นเองครับ  ดังนั้นมันจึงคืนค่าเป็น FALSE

ตัวอย่างที่สอง

<?php
$strings = array('KjgWZC', 'arf12');
foreach ($strings as $testcase) {
    if (ctype_alpha($testcase)) {
        echo "The string $testcase consists of all letters.\n";
    } else {
        echo "The string $testcase does not consist of all letters.\n";
    }
}
?>

ในตัวอย่างที่สองจะการ Loop เพื่ออ่านค่าใน Array ซึ่งมีสองค่า และผลลัพธ์ที่ได้

The string KjgWZC consists of all letters.
The string arf12 does not consist of all letters.

จะเห็นว่า อาร์เรย์ตัวเป็นตัวอักษรทั้งหมดถึงแม้จะมีตัวพิมพ์เล็กตัวพิมพ์ใหญ่ก็ตาม ส่วนอาร์ตัวที่สองได้ echo ออกมาว่า ไม่ใช่ตัวอักษรทั้งหมด เพราะพบมีตัวเลข 1 และ 2 ปะปนอยู่ครับ 

เราสามารถนำฟังก์ชันไปประยุกต์ได้มากมายเช่น เพื่อกาารตรวจซื่อหรือนามสกุลของผู้ใช้ เพื่อป้องกันไม่ให้มีตัวเลขหรือสัญลักษณ์อื่นๆปะปนมาด้วย เพราะโดยปกติแล้ว ชื่อหรือนามสกุล มักจะไม่ตัวเลขครับ หวังว่าบทความนี้จะเป็นประโยชน์ในการนำไปใช้ให้เข้ากับโปรเจ็คของเราน่ะครับ 

ช่องทางการศึกษาเพิ่มเติมข่าวที่น่าสนใจเกี่ยวกับ : ฟังก์ชัน PHP

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
ข้อมูลที่ทำการ loop ไม่เข้าไปเก็บใน array ครับ
โดย bankjittapol จ 18 พ.ย. 2019 8:16 pm บอร์ด Joomla Development
1
10
จ 18 พ.ย. 2019 8:30 pm โดย mindphp
ใช้คำสั่ง วันที่ยังไง โดยไม่ต้องกำหนด timezone
โดย bankjittapol จ 18 พ.ย. 2019 8:11 pm บอร์ด Joomla Development
0
7
จ 18 พ.ย. 2019 8:11 pm โดย bankjittapol
จะกำหนดเงื่อนไขภาษายังไง โดยไม่ไปกำหนดค่าภาษาตรงๆ
โดย bankjittapol จ 18 พ.ย. 2019 8:01 pm บอร์ด Joomla Development
1
10
จ 18 พ.ย. 2019 8:08 pm โดย tsukasaz
ศึกษาการใช้งาน Joomla
โดย numtan5839 จ 18 พ.ย. 2019 7:16 pm บอร์ด M097 - ตรีเนตร บูรณโพธิ์ทอง
0
3
จ 18 พ.ย. 2019 7:16 pm โดย numtan5839
ผลพยากรณ์อากาศ เปลี่ยนภาษาตามการตั้งค่าของผู้ดูแลระบบ
โดย bankjittapol จ 18 พ.ย. 2019 7:11 pm บอร์ด Joomla Developing Knowledge
0
11
จ 18 พ.ย. 2019 7:11 pm โดย bankjittapol
สร้าง list box ใน joomla ที่สามารถเลือก มากกว่า 1 ค่า
โดย bankjittapol จ 18 พ.ย. 2019 6:14 pm บอร์ด Joomla Developing Knowledge
0
9
จ 18 พ.ย. 2019 6:14 pm โดย bankjittapol
จะดึงชื่อจังหวัดมาแสดงใน list ได้ยังไงครับ
โดย bankjittapol จ 18 พ.ย. 2019 5:45 pm บอร์ด Joomla Development
1
15
จ 18 พ.ย. 2019 5:52 pm โดย tsukasaz
ต้องการให้ ใน list แสดงชื่อจังหวัด เพื่อใช้เลือกแสดงครับ
โดย bankjittapol จ 18 พ.ย. 2019 12:03 pm บอร์ด Joomla Development
2
30
จ 18 พ.ย. 2019 4:02 pm โดย bankjittapol
Work's on Hand ตรีเนตร บูรณโพธิ์ทอง M097
โดย numtan5839 จ 04 พ.ย. 2019 11:09 am บอร์ด M097 - ตรีเนตร บูรณโพธิ์ทอง
2
25
จ 18 พ.ย. 2019 3:27 pm โดย numtan5839
ดู Logs ไฟล์ บน Windows Server แบบ Real Time ตัวอย่าง Apache Logs
โดย mindphp จ 18 พ.ย. 2019 1:45 pm บอร์ด Microsoft Office Knowledge & line & Etc
1
12
จ 18 พ.ย. 2019 1:47 pm โดย mindphp
หา theme language file ไม่เจอ
โดย bankjittapol ส 16 พ.ย. 2019 5:33 pm บอร์ด Joomla Development
2
39
ส 16 พ.ย. 2019 5:50 pm โดย bankjittapol
ต้องการสร้าง แท็ก เพื่อเลือกจังหวัด ที่จะแสดง ต้องทำไงครับ
โดย bankjittapol จ 18 พ.ย. 2019 10:53 am บอร์ด Joomla Development
2
18
จ 18 พ.ย. 2019 11:47 am โดย bankjittapol
เริ่มลงทุนในอสังหาฯ คุณเองก็ทำได้
โดย Patty Perfume อ 17 พ.ย. 2019 6:08 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
1
26
จ 18 พ.ย. 2019 10:29 am โดย Losa
บันทึกตัวแปรเป็นชื่อไฟล์ลง database ไม่ได้
โดย teenproza7 อ 28 พฤษภาคม 2019 4:52 pm บอร์ด Programming - C/C++ & java & Python
0
221
อ 28 พฤษภาคม 2019 4:52 pm โดย teenproza7
งานประจำวันที่ 18 พฤศจิกายน 2562
โดย numtan5839 จ 18 พ.ย. 2019 10:14 am บอร์ด M097 - ตรีเนตร บูรณโพธิ์ทอง
1
12
จ 18 พ.ย. 2019 7:16 pm โดย numtan5839
Skype for Business และ Microsoft Teams
โดย Atomseed Suckseed จ 18 พ.ย. 2019 10:11 am บอร์ด MindPHP News / Feedback
0
6
จ 18 พ.ย. 2019 10:11 am โดย Atomseed Suckseed
งานประจำวันที่ 16 พฤศจิกายน 2562
โดย numtan5839 ส 16 พ.ย. 2019 10:28 am บอร์ด M097 - ตรีเนตร บูรณโพธิ์ทอง
4
23
ส 16 พ.ย. 2019 7:02 pm โดย numtan5839
การใช้งาน Ultrasonic Sensor เซ็นเซอร์ที่ใช้สำหรับตรวจจับระยะห่างของวัดถุ
โดย bankjittapol ส 16 พ.ย. 2019 4:42 pm บอร์ด IOT - Internet of things
0
16
ส 16 พ.ย. 2019 4:42 pm โดย bankjittapol
อยากทราบการแสดงวันที่ในรูปแบบของ joomla
โดย bankjittapol ส 16 พ.ย. 2019 11:14 am บอร์ด Joomla Development
5
48
ส 16 พ.ย. 2019 4:56 pm โดย mindphp
Ultrasonic Sensor คืออะไร
โดย bankjittapol ส 16 พ.ย. 2019 3:40 pm บอร์ด IOT - Internet of things
0
25
ส 16 พ.ย. 2019 3:40 pm โดย bankjittapol