แก้ปัญหาภาษาไทยกับ URL Encode/Decode

PHP 26 มี.ค. 2013

ในบางครั้งเมื่อเราต้องแนบตัวอักษรไปกับ url เช่นการ search เราจะต้องเจอกับตักอักษรประหลาดๆ เช่นคำว่า “ทะเล” แต่ผลลัพที่ได้จะออกมาเป็น “%E0%B8%97%E0%B8%B0%E0%B9%80%E0%B8%A5” ทำให้เราไม่สามารถนำไป query ได้

เราสามารถแก้ไขได้โดยใช้ rawurlencode($string) และ rawurldecode($string)

ก่อนแนบ string ไปกับ url เราใช้ rawurlencode($string)
หลังจากนั้นเราใช้ rawurldecode($string) เพื่อคืนค่าที่ถูกต้องกลับมา

แท็ก

Onyx

Just a middle-aged programmer, Can do many things but not the most.