У меня возникли проблемы с пониманием того, почему один сервер, на котором запущен PHP / Apache, правильно форматирует специальные символы, а другой – нет.
метатег, который я использую;
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
Я тоже пробовал;
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
правильно запущен сервер;
Apache / 2.4.9 (Win64) PHP / 5.5.11
тот, который неправильно форматирует, и заменяет символы черным алмазом с вопросительным знаком внутри него;
Apache / 2.4.10 (Win32) OpenSSL / 1.0.1i PHP / 5.6.3
Я беру на себя вопрос о конфигурации, где? Я не знаю. Возможно, это разница в поведении по умолчанию. он не может быть кодом, потому что он идентичен на обоих серверах.
Метатег HTML имеет вторичное значение для сигнализации кодирования; заголовок HTTP Content-Type имеет приоритет, если он присутствует. Один сервер устанавливает этот заголовок, другой – нет (или устанавливает неправильный).
Либо установите кодировку по умолчанию в Apache, либо явно выведите этот заголовок самостоятельно в PHP:
header('Content-Type: text/html; charset=iso-8859-1');