2010-12-12 3 views
0

Невозможно выяснить, как удалить этот символ из строки.PHP: Как избавиться от символа внутри текста?

Строка в формате utf-8.

Что делать? :(

Это удаляет всю строку:

preg_replace('/\W/','',utf8_decode(substr(utf8_encode($ad['description']),0,125))) 

Спасибо;)

Update:

Использование: заголовок ("Content-Type: Текст/html; кодировка = UTF -8');

После замены с помощью выхода() сразу.

+0

Каков источник объявления ['description'] string? И какой набор символов он закодирован? – mmccomb

+0

Не забудьте использовать модификатор '/ u', если вы применяете регулярные выражения к строкам Unicode. –

ответ

3

U + FFFD ЗАМЕНА СИМВОЛОВ когда символ не имеет представления в текущей кодировке кодировки. Заявите кодировки правильно как UTF-8 и используйте строки UTF-8, и он не будет отображаться на большинстве платформ.

0

Вы можете попробовать utf8_decode ('string'); или utf8_encode ('string');

но вы действительно должны попытаться найти actuall проблем убедитесь, что заголовки правильного набора, тип документа и текст кодируется в правильном формате при сохранении или что не

используются
1

Проблема заключается в том, что ваша строка не в формате utf-8. Вы притворяетесь, что это так, и обрабатываете данные соответствующим образом, но строка, вероятно, содержит символы Ansi. Вам не просто нужно передать заголовок Content-Encoding = utf-8, но ваше содержимое должно быть преобразовано в utf-8 до его отправки.

Смежные вопросы