PHP: преобразование скандинавских символов в шестнадцатеричный Unicode

Я работаю над сайтом Joomla с Fabrik, и проблема в том, что Fabrik сериализует некоторые данные с помощью json_encode(), но не учитывает возможности и т. Д. Теперь, когда выполняется поиск в базе данных, он пытается найти что-то с помощью åäö, но ничего не находит, потому что

все \u00e4 и \u00f6

и так далее.

Я не особо за копаюсь в коде Fabrik и вставляю где-нибудь один флаг, и беспокоюсь о его случайной перезаписи при обновлении Fabrik. Поэтому я решил, что, так как я в любом случае разочарован в Fabrik, я мог бы просто написать его полностью в специальном шаблоне. Легко.

Проблема в том, что я не могу найти способ или функцию, такую ​​как htmlentities(), которой я могу просто кормить материал, чтобы он соответствовал. Я мог бы просто заменить их персонажем, но это не очень хорошее решение.

Перефразируя: я хочу превратить слово Mörkö в -> M\u00f6rk\u00f6. Как?

1 ответ

Решение

Может быть, есть другой способ, но он работает как исключение:

$encoded = substr(json_encode('Mörkö'), 1, -1);

json_encode('Mörkö') => "M \ u00f6rk \ u00f6"

substr() => M \ u00f6rk \ u00f6

Другие вопросы по тегам