วิธีแก้ปัญหา การตัดข้อความด้วย substr แล้วเป็น สี่เหลี่ยม

PHP Result Center PHP Result Center เป็นหมวด ที่ไว้รวบรวม โปรแกรม Code php Javascript CSS CMS

Moderator: mindphp, ผู้ดูแลกระดาน

ภาพประจำตัวสมาชิก
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
โพสต์: 41232
ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
ติดต่อ:

วิธีแก้ปัญหา การตัดข้อความด้วย substr แล้วเป็น สี่เหลี่ยม

โพสต์ที่ยังไม่ได้อ่าน โดย mindphp »

วิธีแก้ปัญหา การตัดข้อความด้วย substr แล้วเป็น สี่เหลี่ยม
ปกติ ถ้าเข้าใช้ ภาษาไทยปกติก็จะไม่เจอปัญหานี้ แต่ถ้าเป็นเว็บ หรือ ฐานข้อมูลที่ใช้ UTF-8
เวลาตัดข้อความด้วย substr ก็จะเจอปัญหา ตัวสุดท้ายกลายเป็นสี่เหลี่ยม ทางแก้คือต้องใช้ function ที่ทำงานกับข้อความ ที่เป็น multi-byte
เช่น
mb_substr(); https://www.mindphp.com/modules.php?name ... ubstr.html
หรือ
iconv_substr() https://www.mindphp.com/modules.php?name ... ubstr.html

ตัวอย่างเช่น

โค้ด: เลือกทั้งหมด

   
    echo substr($msg,0,124);
แทนด้วย
    echo mb_substr($msg,0,124,'UTF-8'); 
หรือ
    echo iconv_substr($msg, 0,124, "UTF-8");
  
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
บุคคลทั่วไป

Re: วิธีแก้ปัญหา การตัดข้อความด้วย substr แล้วเป็น สี่เหลี่ยม

โพสต์ที่ยังไม่ได้อ่าน โดย บุคคลทั่วไป »

แจ๋มเลย ปวดหัวมากปัญหานี้ ขอบคุณก๊าบ
spmon21
PHP Newbie
PHP Newbie
โพสต์: 4
ลงทะเบียนเมื่อ: 12/08/2022 12:02 pm

Re: วิธีแก้ปัญหา การตัดข้อความด้วย substr แล้วเป็น สี่เหลี่ยม

โพสต์ที่ยังไม่ได้อ่าน โดย spmon21 »

โค้ตลักษณะนี้ง่ายเลย แต่ต้องค่อยศึกษา
ตอบกลับโพส
  • Similar Topics
    ตอบกลับ
    แสดง
    โพสต์ล่าสุด

ผู้ใช้งานขณะนี้

สมาชิกกำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และบุคลทั่วไป 57