GORAGOD.com

ฟังก์ชั่นแปลง UTF8 ให้เป็น TIS620

ปกติแล้วการแปลงอักขระ ระหว่าง UTF-8 เป็น TIS-620 เราสามารถใช้ ฟังก์ชั่น inconv แปลงได้ โดยมีรูปแบบ

$string = iconv( 'UTF-8' , 'TIS-620' , $string );

แต่ในบางครั้ง อาจพบว่าบาง Server ไม่รองรับฟังก์ชั่นนี้ครับ ทางแก้ที่ดี คือติดต่อ Server เพิ่อให้ทาง Server เปิดการทำงานในส่วนนี้ให้ แต่ถ้าทำไม่ได้ ให้ลองใช้ ฟังก์ชั่นนี้ดูครับ 

function utf2tis( $string )
{
 $str = $string;
 $res = "";
 for ( $i = 0 ; $i < strlen( $str ) ; $i++ )
 {
  if ( ord( $str[$i] ) == 224 )
  {
   $unicode = ord( $str[$i+2] ) & 0x3F;
   $unicode |= ( ord( $str[$i+1] ) & 0x3F) << 6;
   $unicode |= ( ord( $str[$i] ) & 0x0F ) << 12;
   $res .= chr( $unicode - 0x0E00 + 0xA0 );
   $i += 2;
  }
  else
  {
   $res .= $str[$i];
  };
 };
 return $res;
};