Как конвертировать апострофный тип в PHP? Неправильный ответ - PullRequest
0 голосов
/ 20 февраля 2020

По сути, у меня есть массив в PHP. Я перебираю и выводю в HTML текстовую область. Входящие данные содержат список строк, некоторые из которых используют апостроф. Например: «Данные первого элемента», «Данные второго элемента», «Данные третьего элемента» ... et c. Используемый апостроф корректен. Но когда они выводятся в текстовую область, они переходят от правильного типа к неправильному. (они выглядят ОЧЕНЬ похожими, но это разные символы).

Я пытался использовать разные вещи, чтобы поменять их местами, такие как str_replace, preg_replace, htmlspecialchars и mb_convert_encoding. Ни одна из которых не работает. Либо они не могут найти ', либо даже после того, как его заменили на', он все еще выглядит как '

Моим ближайшим предположением является проблема кодирования. Потому что даже после использования mb_convert_encoding, когда я проверяю результат с помощью mb_detect_encoding, он по-прежнему отображается как тип ASCII.

Страница html имеет это вверху: <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

Любое понимание для как я могу заставить использование правильного формата / кодировки апострофа будет приветствоваться.

1 Ответ

0 голосов
/ 20 февраля 2020

РЕШЕНИЕ Оказывается, это проблема с Wordpress Smart или Curly Quotes, изменяющими символы.

Удалось решить проблему, добавив ее в файл функций темы и / или в файле плагина.

add_filter( 'run_wptexturize', '__return_false' );

...