Проблемы с кодировкой символов Codeigniter
-
03-07-2019 - |
Вопрос
У меня есть несколько простых страниц, которые не содержат данных базы данных и просто статически загружаются с контроллера.Я сделал все возможное, чтобы UTF-8
кодирование.Я проверил заголовки, которые приводят к UTF-8
.Тем не менее, он по-прежнему неправильно анализирует эти символы:���.
Контроллер:
function index(){
$this->load->view('french/header_view');
$this->load->view('french/homepage_view');
$this->load->view('french/footer_view');
}
Конфигурационный файл:
$config['charset'] = "UTF-8";
Вид заголовка:
<? header("Content-Type: text/html; charset=UTF-8"); ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
....
Символы, используемые в представлении тела:
géniales - à - époustouflant
Сгенерированные символы:
� se g�niales !
Где я ошибся?Спасибо за вашу помощь!
Решение
Похоже, что данные не закодированы в UTF-8.Вы проверили настройки кодировки в вашем редакторе?
Другие советы
Старый, но все еще актуальный:
http://philsturgeon.co.uk/blog/2009/08/UTF-8-support-for-CodeIgniter
У меня была такая же проблема с Dreamweaver CS4, но я исправил ее с помощью Notepad ++ (БЕСПЛАТНО!).
1.- Используйте Notepad ++ -> Форматирование -> Преобразование в UTF-8 БЕЗ спецификации.
2.- Сохранить.
3. - Еще раз ПРОСМОТРИТЕ файл и правильный символы отображаются неправильно.
4. - Сохраните еще раз.
5.- С тобой покончено.
(Также убедитесь, что в файле конфигурации в CI у вас указан UTF8).
По крайней мере, для меня это сработало именно так (по-испански).