На самом деле rawurldecode()
дает вам правильный результат.Этот символ состоит из четырех байтов при кодировании в utf-8, и правило в кодировке url заключается в преобразовании каждого байта в нотацию% XX.rawurldecode () возвращает вам эти 4 байта, но, вероятно, вы не установили кодировку своей страницы в utf-8, поэтому ваш браузер неправильно интерпретирует эти байты.добавьте это к вашему <head>
:
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
, и вы должны увидеть правильный символ.
Это тестовая страница, которую я сделал:
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
</head>
<body>
<?php echo rawurldecode('%F3%BE%AE%A2'); ?>
</body>
</html>
что я вижу в своем браузере:
?
именно тот символ, который вы хотите видеть.