У меня есть база данных, в которой хранятся имена видеоигр с символами Unicode, но я не могу понять, как правильно избежать этих символов Юникода при печати их в ответ HTML.Печать символов Юникода PHP
Например, когда я печатаю все игры с именем, как Uncharted, я получаю это:
Uncharted: Drake's Fortuneâ„¢
Uncharted 2: Among Thievesâ„¢
Uncharted 3: Drake's Deceptionâ„¢
но он должен показать это:
Uncharted: Drake's Fortune™
Uncharted 2: Among Thieves™
Uncharted 3: Drake's Deception™
Я побежал функцию быстрого JavaScript бежать к посмотрите, какой символ Юникода ™
, и нашел, что это \u2122
.
У меня нет проблем с полным экранированием каждого символа в строке, если я могу правильно отобразить символ ™
. Я думаю, чтобы каким-то образом найти шестигранный представление каждого символа в строке и есть PHP делают символы Unicode, как это:
print "™";
Пожалуйста, руководство меня через лучший подход для Unicode спасаясь строку для того HTML дружелюбным. Я сделал что-то подобное для JavaScript, но JavaScript имеет встроенную функцию для escape и unescape.
Однако я не знаю никаких функций PHP аналогичной функции. Я прочитал о функции ord, но он просто возвращает код символа ASCII для заданного символа, следовательно, неправильное отображение ™
или ™
. Я хотел бы, чтобы эта функция была достаточно универсальной для применения к любой строке, содержащей допустимые символы Unicode.