Antonchik
@Antonchik
Программирую на HTML

Как получить нормальный текст?

Здравствуйте. Есть у меня такой текст \u0412\u0440\u0435\u043c\u044f \u043f\u0440\u0438\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0439. \u041a\u0430\u0440\u0442\u043e\u0447\u043d\u044b\u0435 \u0432\u043e\u0439\u043d\u044b. \u0424\u0438\u043d\u043 как получить из него нормальный текст?
  • Вопрос задан
  • 793 просмотра
Решения вопроса 2
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
1. json_decode()
2.
html_entity_decode(str_replace('\u','&#x',$str), ENT_NOQUOTES,'UTF-8');
Ответ написан
webirus
@webirus
Тыжверстальщик! Наверстай мне упущенное...
Время приключений. Карточные войны. Фин...

<?php
$inp = '\u0412\u0440\u0435\u043c\u044f \u043f\u0440\u0438\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0439. \u041a\u0430\u0440\u0442\u043e\u0447\u043d\u044b\u0435 \u0432\u043e\u0439\u043d\u044b. \u0424\u0438\u043d\u043';
$s = preg_replace('/\\\u0([0-9a-fA-F]{3})/','&#x\1;',$inp);
echo html_entity_decode($s, ENT_NOQUOTES, 'UTF-8');
?>
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@masterfreelance
программист со стажем
$str='\u0412\u0440\u0435\u043c\u044f\u043f\u0440\u0438';
$ar=explode('\u',$str);
for($i=1;$i<count($ar);++$i) {
    $n.='&#'.base_convert($ar[$i],16,10);
}
echo html_entity_decode($n, ENT_NOQUOTES,'UTF-8');
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы