function tis620_to_utf8($text) {
$utf8 = "";
for ($i = 0; $i < strlen($text); $i++) {
$a = substr($text, $i, 1);
$val = ord($a);
if ($val < 0x80) {
$utf8 .= $a;
} elseif ((0xA1 <= $val && $val < 0xDA) || (0xDF <= $val && $val <= 0xFB)) {
$unicode = 0x0E00+$val-0xA0;
$utf8 .= chr(0xE0 | ($unicode >> 12));
$utf8 .= chr(0x80 | (($unicode >> 6) & 0x3F));
$utf8 .= chr(0x80 | ($unicode & 0x3F));
}
}
return $utf8;
}
จากฟังก์ชั่นข้างต้นนี้เป็นการแนะนำข้อความแต่ละอักขระในรูปแบบ tis620 มาเทียบกับรหัสในรูปแบบ utf8 แล้วส่งคืนค่ากลับครับ
Wednesday, May 30, 2012
ฟังก์ชั่นแปลง encode จาก tis620 เป็น utf8
ปัญหาเรื่องของการ Encode ภาษาไทยมักสร้างความปวดกระโหลกให้กับบรรดาโปรแกรมเมอร์มือใหม่และมือเก่า โดยเฉพาะใน PHP วันนี้ขอนำเสนออีกหนึ่งวิธีการ นั่นคือ ฟังก์ชั่นการแปลงรหัส tis620 เป็น utf8 ลองนำไปใช้กันดูครับอาจจะแก้ปัญหาที่ท่านกำลังประสพอยู่ก็เป็นได้ อิอิ
Subscribe to:
Comments (Atom)