Я сталкиваюсь с проблемой с тире, которую не могу решить. Для нашего сайта мы храним текстовое содержимое в столбце «content» в базе данных MySQL, который иногда будет содержать специальные символы, которые отображаются правильно, за исключением тире em. Любые тире во введенном тексте превращаются в знаки вопроса с заменой алмазов при печати на сайте.
Эта ошибка появляется только на нашем производственном сайте (на нашем сайте разработки и промежуточном сайте эмдаши отображаются правильно), что позволяет мне полагать, что это может быть проблема с наборами символов в соответствующих базах данных (наши базы данных разработки / размещения размещены на одном сервер, и производство на другом сервере). Однако столбец, содержащий текстовое содержание, о котором идет речь, установлен во всех базах данных utf-8. Упаковка вывода в htmlspecialchars () не сработала.
Следует отметить тот факт, что когда я использовал print_r () для печати переменной, в которую я сохранял результаты выборки из БД (для отладки), то тире em будут правильно отображаться при распечатке ниже.
Спасибо всем, кто откликнулся, это было исправлено решением SET NAMES ‘utf8’ в UTF-8 полностью
Других решений пока нет …