วันพฤหัสบดีที่ 21 มีนาคม พ.ศ. 2556

ภาษาไทยกับการตัดข้อความให้สั้นลง (PHP,MySQL)

พอดีว่าต้องย่อข้อความให้สั้นลงเพื่อไม่ให้มันยาวมากเกินไป เพราะเนื้อหาจริงๆ มันจะยาวเกินไปหน่อย

ตอนแรกใช้การย่อข้อความลงด้วย PHP

$Content = substr($Content, 0, 100); 

แบบนี้มันก็ใช้งานได้ดี แต่มันมีปัญหากับภาษาไทย ซึ่งเข้าใจว่าน่าจะเป็นที่การเก็บข้อมูลเป็นแบบ UTF-8 ก็เลยตัดได้ไม่ลงตัวดีนัก มันก็จะโผล่เป็นตัวประหลาดๆ ออกมาบ้าง

วันนี้ก็เลยลองทำวิธีใหม่ที่เจอมาจากในนี้ http://net.tutsplus.com/tutorials/php/how-to-create-blog-excerpts-with-php/

คือเค้าใช้วิธีการดึงข้อมูลมาแค่ 100 ตัวอักษรเลย โดยใช้คำสั่ง LEFT() ใน MySQL ก็จะออกมาเป็นแบบนี้

SELECT content, LEFT(content,40) AS excerpt FROM `my_data`;

ซึ่งพอดึงข้อมูลออกมา มันก็จะเป็นแค่ 100 ตัวอักษรแถมภาษาไทยก็ไม่เละอีกด้วย แจ่มมากๆ :D

ไม่มีความคิดเห็น:

แสดงความคิดเห็น