PHP ตัดภาษาไทยออก เหลือแต่ภาษาอังกฤษ ใช้ฟังก์ชั่น preg_replace แบบลูกทุ่ง

หน้าหลัก » Function ฟังก์ชัน PHP, PHP Programming โดย pun January 18, 2015 8:41 pm
สวัสดีดีครับ สำหรับท่านที่กำลังทำเว็บ ด้วย php อาจจะเคยเจอโจทย์ เจอปัญหาให้แก้ในรูปแบบต่างๆ ผมก็เหมือนกันบางทีก็อยากทำอย่างโน้นนี้ แต่บางทีด้วยประสบการณ์ และอาจจะยังไม่เคยใช้มาก่อนก็อาจจต้องทำความเข้าใจและทดลองดูก่อน

[caption id="attachment_2856" align="aligncenter" width="500"]preg_replace  ตัวภาษาไทยออก แบบลูกทุ่ง preg_replace ตัวภาษาไทยออก แบบลูกทุ่ง[/caption]

PHP วีธีการตัดข้อความภาษาไทย แบบลูกทุ่ง
สำหรับฟังก์ชั่นนี้ก็เหมือนกันดูสั่นๆ แต่กว่าจะได้ตามที่ต้องการก็ต้องการ test ลองกันเหมือนรูปแบบเหมือนกัน
คือสิ่งที่ผมต้องการ php ตัดข้อความ อยากนำ title ของโพสต์ที่ user ได้โพสต์ไว้มาทำ URL Friendly เพื่อรองรับ SEO

โดย title หรือหัวข้อนั้นมีอักขระ ภาษาไทยและอังกฤษผสมอยู่ ซึ่งผมต้องการแต่อักขระภาษาอังกฤษเท่านั้น เลยคิดหาวิธีไปเจอ ฟังก์ชั่น php preg_replace ประยุกต์ใช้ตามตัวอย่างด้านล้างนี้

[php]
<?php
$text = 'เช่า hosting ที่ไหนดี Web Hosting 10GB';
$regex = '/[ก-๙\ ]/';
$data_eng = preg_replace($regex, '', $text);
$data_expert = mb_strimwidth($data_eng,0,250,"", "UTF-8");
//$data_expert= fn_filter_url(mb_strimwidth(fn_undat($data_eng),0,250,"", "UTF-8"));
echo $data_expert;

?>
[/php]

ผลลัพธ์จากตัวอย่าง
คือ hostingWebHosting10GB

ถ้าใครอยากทำ URL Friendly เพื่อรองรับการทำ SEO ลองนำไปใช้ดูครับ
ส่วนเพื่อนต้องการเพิ่มเติมอะไรก็ลองเสริม ประยุกต์ใช้ดูครับ

PHP ตัดภาษาไทยออก เหลือแต่ภาษาอังกฤษ ใช้ฟังก์ชั่น preg_replace แบบลูกทุ่ง


บทความโดย pun