โค้ดสำหรับสร้าง Slug จากข้อความที่กำหนดเป็นดังนี้
public static function slugify($str, $delimiter = '-') { // Replace none alphanumeric with delimiter $str = preg_replace('/[^A-Za-z0-9]+/', $delimiter, $str); // Replace duplicated delimiter $str = preg_replace("/$delimiter+/", $delimiter, $str); // Trim delimiter $str = trim($str, $delimiter); // Convert to lower case $str = strtolower($str); return $str; }ขั้นตอนการทำงานเป็นดังนี้
- แทนที่อักขระพิเศษที่ไม่ใช่ตัวอักษรและตัวเลขด้วย delimiter
- ลบ delimiter ที่อยู่ติดกันออกให้เหลือเพียงตัวเดียว
- ตัด delimiter ที่อาจจะมีอยู่ทั้งหน้าและหลังข้อความออก
- แปลงข้อความที่ได้เป็นตัวพิมพ์เล็ก
No comments:
Post a Comment