เปลี่ยนภาษไทยจาก Latin1 เป็น UTF-8 by rainbow

30
Apr
0

เคยไหมที่ไปเจอ Mysql database ที่จัดเก็บ collation เป็น latin1 แต่เราเขียนโปรแกรมพรอ้ม database ใหม่เป็น utf-8 ทั้งหมด ตอนแรก”คิดว่า”จะไม่ต้องไปเชื่อมต่อกับข้อมูลเก่าๆนี้แล้ว แต่บระเจ้า!!! ต้องเชื่อมต่อกับมันจนได้ ก็เลยเป็นเรื่องราวให้มาเขียนในวันนี้

ไฟล์ที่ใช้ในการconvert นี้ encoding เป็น UTF-8 นะครับ

1. เริ่มจากการเชื่อมต่อกับ Database “เก่า” ก็เชื่อมต่อธรรมดาครับ ไม่มีอะไรขอข้ามไปละกัน ที่จะมีก็คำสั่ง mysql_query(”SET NAMES ‘latin1′”); ที่ทำให้การเชื่อมต่อเป็นประเภทเดียวกับ collation ของ database

2.ดึงข้อมูลที่ต้องการออกมา

3.ถ้าข้อมูลที่เก็บเป็น UTF-8 อยู่แล้วก็ข้ามข้อนี้ไป ถ้าไม่ให้รันคำสั่ง iconv() เป็นเป็น UTF-8 ก่อน

4.จากนั้นเชื่อมต่อกับ Database ใหม่ ตามด้วยคำสั่ง mysql_query(”SET NAMES ‘utf8′”);

5.จัดเก็บข้อมูลที่นำมาจาก Database เก่า เท่านี้ก็จะได้ข้อมูลใหม่ที่เป็น collation UTF8 แล้ว

Share

Enjoy this article?

Consider subscribing to our RSS feed!

ไม่มีความเห็น

ยังไม่มีความเห็น

ใส่ความเห็น

RSS feed for comments on this post