我试图让我们的聊天系统支持 UTF-8,但我失败了。如果在客户端,我发送以下消息,通过encodeURIComponent
:
- ûôó
并将其放在 PHP 端:
error_log(print_r(array(
$_POST['message'],
urldecode($_POST['message']),
rawurldecode($_POST['message']),
utf8_decode($_POST['message']),
utf8_decode(urldecode($_POST['message'])),
utf8_decode(rawurldecode($_POST['message']))
), true));
这是我的错误日志中的输出:
Array
(
[0] => %C3%AE%C3%BB%C3%B4%C3%B3
[1] => îûôó
[2] => îûôó
[3] => %C3%AE%C3%BB%C3%B4%C3%B3
[4] => îûôó
[5] => îûôó
)
所以一切都很好。但是,如果我使用这些,都从 Wikipedia 复制(分别为俄语和日语页面):
- русский язык
- 日本语</li>
这一切都下地狱了!
Array
(
[0] => %D1%80%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9%20%D1%8F%D0%B7%D1%8B%D0%BA
[1] => руÑÑкий Ñзык
[2] => руÑÑкий Ñзык
[3] => %D1%80%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9%20%D1%8F%D0%B7%D1%8B%D0%BA
[4] => ??????? ????
[5] => ??????? ????
)
Array
(
[0] => %E6%97%A5%E6%9C%AC%E8%AA%9E
[1] => 日本語
[2] => 日本語
[3] => %E6%97%A5%E6%9C%AC%E8%AA%9E
[4] => ???
[5] => ???
)
我需要做什么才能完成这项工作?