การแยกและรูปแบบที่ใช้ได้จริง
แยกสตริงด้วย preg_split และสร้างรูปแบบการตรวจสอบที่ใช้กันทั่วไป
การแยกและรูปแบบที่ใช้ได้จริง เป็นบทเรียน PHP Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน PHP Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส PHP Academy มีบทเรียนทั้งหมด 4 บทเรียน
ลายเซ็นของ preg_split()
preg_split($pattern, $subject, $limit, $flags) แบ่งสตริงตามตัวคั่นที่เป็นนิพจน์ทั่วไปและคืนค่าอาร์เรย์ของสตริงย่อย
การแบ่งแบบง่าย
แบ่งที่ลำดับช่องว่างใด ๆ
<?php
$words = preg_split('/\s+/', "Hello World\tFoo");
print_r($words); // ["Hello", "World", "Foo"]การแบ่งพร้อมขีดจำกัด
พารามิเตอร์ตัวที่ 3 จำกัดจำนวนส่วนที่คืนค่า ส่วนสุดท้ายจะมีข้อมูลที่เหลือทั้งหมด
<?php
$parts = preg_split('/,\s*/', "a, b, c, d", 3);
print_r($parts); // ["a", "b", "c, d"]PREG_SPLIT_NO_EMPTY
แฟล็ก PREG_SPLIT_NO_EMPTY จะลบสตริงว่างออกจากผลลัพธ์ ซึ่งมีประโยชน์เมื่อข้อมูลนำเข้ามีตัวคั่นติดกัน
<?php
$parts = preg_split('/,/', "a,,b,,c", -1, PREG_SPLIT_NO_EMPTY);
print_r($parts); // ["a", "b", "c"]PREG_SPLIT_DELIM_CAPTURE
รวมตัวคั่น (และกลุ่มที่จับคู่ได้ของตัวคั่น) ไว้ในอาร์เรย์ผลลัพธ์
<?php
$parts = preg_split('/(,)/', "a,b,c", -1, PREG_SPLIT_DELIM_CAPTURE);
print_r($parts); // ["a", ",", "b", ",", "c"]รูปแบบการตรวจสอบอีเมล
นิพจน์ทั่วไปสำหรับอีเมลตามมาตรฐาน RFC-5322 แบบใช้งานจริง:
<?php
function validEmail(string $s): bool {
return (bool) preg_match(
'/^[a-zA-Z0-9._%+\-]+@[a-zA-Z0-9.\-]+\.[a-zA-Z]{2,}$/',
$s
);
}รูปแบบการตรวจสอบ URL
ตรวจสอบ URL ของ http/https
<?php
function validUrl(string $s): bool {
return (bool) preg_match(
'#^https?://[\w\-]+(\.[\w\-]+)+(/[^\s]*)?$#i',
$s
);
}รูปแบบหมายเลขโทรศัพท์
อนุญาตให้มีรหัสประเทศ ขีดกลาง จุด หรือช่องว่างระหว่างกลุ่มตัวเลขได้ โดยทั้งหมดเป็นตัวเลือก
<?php
$pattern = '/^\+?[1-9]\d{0,2}[\s\-.]?\d{3}[\s\-.]?\d{4,7}$/';
preg_match($pattern, '+1 800 555-1234', $m);รูปแบบความแข็งแรงของรหัสผ่าน
กำหนดให้มีอักขระอย่างน้อย 8 ตัว โดยมีตัวพิมพ์ใหญ่ 1 ตัว ตัวเลข 1 ตัว และอักขระพิเศษ 1 ตัว
<?php
function strongPassword(string $p): bool {
return preg_match('/^(?=.*[A-Z])(?=.*\d)(?=.*[^\w]).{8,}$/', $p);
}รูปแบบที่อยู่ IPv4
ตรวจสอบที่อยู่ IPv4 โดยแต่ละอ็อกเทตต้องอยู่ระหว่าง 0–255
<?php
$ipv4 = '/^(25[0-5]|2[0-4]\d|[01]?\d\d?)(\.(25[0-5]|2[0-4]\d|[01]?\d\d?)){3}$/';รูปแบบวันที่
ตรวจสอบสตริงวันที่รูปแบบ YYYY-MM-DD
<?php
$date = '/^\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])$/';
var_dump((bool) preg_match($date, '2025-06-15')); // trueสรุป
preg_split แบ่งสตริงตามรูปแบบ มีรูปแบบที่ใช้งานได้จริงสำหรับอีเมล URL หมายเลขโทรศัพท์ และวันที่ แต่ควรเลือกใช้ filter_var สำหรับชนิดข้อมูลมาตรฐานเสมอ
ตรวจสอบอย่างรวดเร็ว
แฟล็กใดลบสตริงว่างออกจากผลลัพธ์ของ preg_split
คำถามที่พบบ่อย
บทเรียน “การแยกและรูปแบบที่ใช้ได้จริง” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “การแยกและรูปแบบที่ใช้ได้จริง” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส PHP Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส PHP Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “การแยกและรูปแบบที่ใช้ได้จริง”
แยกสตริงด้วย preg_split และสร้างรูปแบบการตรวจสอบที่ใช้กันทั่วไป คุณปฏิบัติ PHP Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน PHP Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน PHP Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน
บทเรียน “การแยกและรูปแบบที่ใช้ได้จริง” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน PHP Academy นี้ได้ไหม
ได้ บทเรียน PHP Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- พื้นฐานไวยากรณ์ Regex
- การจับคู่ด้วย preg_match
- การแทนที่ข้อความด้วย preg_replace
- การแยกและรูปแบบที่ใช้ได้จริง