– PHP cung cấp rất nhiều hàm để phục vụ việc convert dữ liệu, iconv, mb_convert_encoding…
- Hàm iconv cung cấp 2 cờ TRANSLIT và IGNORE, phục vụ cho việc thông báo lỗi.
- Hàm mb_convert_encoding hỗ trợ trên nhiều nền tảng hơn iconv.
- Trong một số trường hợp chuỗi đầu vào chứa những ký tự đặc biệt như 〒,… .Dù 2 hàm cùng dùng chung một loại convert, nhừng hàm iconv sẽ không dịch được chuỗi này và sẽ trả về false.
– Hàm mb_convert_encoding.
string mb_convert_encoding ( string $str , string $to_encoding [, mixed $from_encoding = mb_internal_encoding() ] )
str: Chuổi nhập đầu vào.
to_encoding: Loại mã hoá mà ta muốn chuyển sang.
from_encoding: Loại mã hoá của chuổi đầu vào.
Ví dụ:
$str = mb_convert_encoding($str, “SJIS”, “auto”);
$str = mb_convert_encoding($str, “SJIS”, “EUC-JP”);
Lệnh đầu tiên hàm sẽ tự động tìm kiếm loại mã hoá của chuỗi nguồn và dịch sang SJIS. Lệnh thứ hai hàm sẽ dịch từ mã EUC-JS sang SJIS. Các loại mã Nhật sẽ phân ra các loại 1byte, 2byte,.. . Nếu ta chọn chức năng auto có thể hàm sẽ nhận diện sai và dịch sai.