จัดการ 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 : https://www.siamfocus.com/
► LINE@ : https://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
--------------------------










บทความ แนะนำ

วิธีการดูแลเว็บไซต์

วิธีการดูแลเว็บไซต์

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

SiAMFOCUS PRESENT 2017

SiAMFOCUS PRESENT 2017

ฝากผลงานด้วยนะครับ มีงานให้รับใช้ ออกมาดัก กวักมือเรียกได้เลยครับ  Download ไป Print ได้เลยค...

php shortcode in wordpress

php shortcode in wordpress

Wordpress วันนี้ มีโจทย์ มาให้แก้อีกแล้วครับ คือแสดงข้อมูล หลังจาก Login เข้ามาแล้ว โดยต้องแสดง...

mySQL DISTINCT AND ORDER BY

mySQL DISTINCT AND ORDER BY

ปัญหานี้เกิดจาก เมื่อผมต้องการคนที่เขียน content 5 คนล่าสุดนะครับ โดยต้องการรหัส user และ รหัส co...




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