หน้าหลัก » ภาษาพีเอชพี (PHP) » วิธีกำหนดให้ XML-RPC for PHP ใช้ encoding เป็น UTF-8

วิธีกำหนดให้ XML-RPC for PHP ใช้ encoding เป็น UTF-8




วิธีการแก้ไขปัญหาการใช้งาน XMLRPC for PHP หรือ phpxmlrpc ซึ่ง library อยู่ที่ https://github.com/gggeek/phpxmlrpc ปัญหาที่เกิดขึ้นเมื่อใช้งานและมีข้อความที่เป็นภาษาไทยทำให้ xmlrpc คืนค่าเป็น เครื่องหมายคำถาม (?) เช่น

??????????????????????????

เนื่องจาก xmlrpc library กำหนดค่าเริ่มต้นในการ encoding เป็น “ISO-8859-1” ดังนั้นจะต้องทำการเปลี่ยนเป็น “UTF-8” แทน โดยทำการแก้ไขไฟล์ lib/xmlrpc.inc

XMLRPC เวอร์ชั่น 2.2.2 แก้ไขบรรทัดที่ 232 จาก

$GLOBALS['xmlrpc_internalencoding']='ISO-8859-1';

เป็น

$GLOBALS['xmlrpc_internalencoding']='UTF-8';

XMLRPC เวอร์ชั่น 4.4.1 แก้ไขบรรทัดที่ 61 จาก

PhpXmlRpc\PhpXmlRpc::$xmlrpc_internalencoding = 'ISO-8859-1';

เป็น

PhpXmlRpc\PhpXmlRpc::$xmlrpc_internalencoding = 'UTF-8';