Уборка неприятных символов в PHP - PullRequest
2 голосов
/ 08 апреля 2010

Есть небольшая проблема, когда мой клиент вставляет содержимое из Word в мой маленький текстовый редактор в CMS.

Двойные кавычки возвращаются в кодировке, напоминающей UTF.

Любые идеи, если я смогу убрать / заменить их, используя PHP, когда они будут отображены из моей таблицы MySQL.

Вот ссылка на страницу, которая выплевывает изворотливых персонажей, вы можете увидеть «черные бриллианты гибели», которые вызывают головные боли.

http://linq.milkbarstudios.com/news_detail.php?id=3

Любые предложения будут приняты!

Ответы [ 2 ]

2 голосов
/ 08 апреля 2010

Это звучит как ошибка в вашем коде. При обработке текстовых данных вы всегда должны учитывать кодировку и конвертировать туда и обратно при необходимости. Поэтому, когда браузер отправляет вам UTF-8, вы должны декодировать строку перед отправкой в ​​базу данных (MySQL поддерживает UTF-8 в текстовых столбцах). Таким образом, оригинальный текст будет сохранен. Конечно, вы должны сделать то же самое, когда вы отображаете страницу для браузера (установите кодировку UTF-8, убедитесь, что вы действительно отправляете UTF-8 и т. Д.).

0 голосов
/ 08 апреля 2010

Я на самом деле искал PHP для замены хитрых символов.

В конце концов я нашел это, и это прекрасно исправляет:

$output = preg_replace('/[^(\x20-\x7F)]*/','', $output);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...