Мне трудно заменить этот странный правильный символ одинарной кавычки. Я использую str_replace следующим образом:
str_replace("’", '\u1234', $string);
Похоже, я не могу понять, какой персонаж на самом деле является цитатой. Даже когда я копирую и вставляю его прямо из PHPMyAdmin, он все равно не работает. Должен ли я как-то избежать этого?
Персонаж: http://www.lukomon.com/Afbeelding%204.png
- Кодировка MySQL: Юникод UTF-8 (utf8)
- Сопоставления MySQL: utf8_unicode_ci
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
EDIT: это оказалась одинарная кавычка Microsoft, которую я мог заменить на эта функция из комментария Фила Паффорда. Не уверен, какой ответ я должен отметить сейчас ..
’ведет себя не так, как вы хотите, вы нарушите все символы, отличные от ASCII. Пришло время проверить один из 2 000 000 вопросов SO о том, «почему Unicode не проходит через мой PHP?». (Обычно из-за отсутствия UTF-8,mysql_set_charsetили использованияhtmlentitiesвместо правильногоhtmlspecialchars.) - person bobince   schedule 30.04.2010iconv()здесь должно работать, не так ли? - person Frank Farmer   schedule 08.05.2010