จัดการ string ภาษาไทย

จัดการ string ภาษาไทย



ปัญหาการตัดคำในภาษาไทย 

ปัญหาของผมเกิดจากเมื่อต้องการแสดงข้อความภาษาไทยบางส่วนแล้วส่วนสุดท้ายจะแสดงเป็นจุดสีดำหรือภาษาต่างดาวอะไรก็แล้วแต่ 
จึงต้องหาวิธีแก้ไข จึงพบว่าเมื่อมีการใช้คำภาษาไทยจำเป็นต้องใช้คำส่ง string เพิ่มเติม คือ mb_strlen(), และ mb_substr()
print mb_strlen("ฟ้า","utf-8") . "<br />";
print strlen("ฟ้า") . "<br /><br />";
print mb_strlen("ก","utf-8") . "<br />";
print strlen("ก") . "<br /><br />";
print mb_strlen("a","utf-8") . "<br />";
print strlen("a") . "<br /><br />";
ผลลัพท์ที่ได้คือ
3
9

1
3

1
1
นั่นหมายถึงว่าตัวอักษรภาษาไทย หากไม่ใช่ mb_ ก็จะได้ความยาวเป็น 3 เท่าของอักษรปกติ
จากข้อสรุปดังกล่าวก็สามารถนำไปประยุกต์ได้ครับ เช่น
<?php
$str = "สยามโฟกัส ดอท คอม";
if(mb_strlen($str,"utf-8")>9){
 print mb_substr($str,0,9,"utf-8"); 
}
?>
ผลลัพท์ที่ได้คือ 
สยามโฟกัส
ลองเอาไปใช้ดูนะครับ 

ฝากติดตามผลงานด้านล่างด้วยครับ
--------------------------
► Website : http://www.siamfocus.com/
► LINE@ : http://line.me/ti/p/@siamfocus.com
► Facebook : https://www.facebook.com/fanpage.siamfocus
► Twitter : https://twitter.com/siamfocus
► Google+ : https://plus.google.com/+TAAMSiAMFOCUS
► Instagram : https://www.instagram.com/iamtaam
--------------------------









บทความ แนะนำ




หมวดหมู่บทความ