У меня есть база данных, которую я запускаю, используя MySql и codeigniter, в которой есть смесь английских и французских имен.
Французские имена, такие как Андре, возвращаются как Андре, а другие, очевидно, неверные.
Как я могу предотвратить это, и что мы можем вставить Андре и вернуть Андре?
Спасибо!
Если настройки вашей базы данных установлены на UTF-8 (и, судя по вашим комментариям, они есть), вы можете видеть эти странные символы, потому что ваша страница не отображается как UTF-8.
Предполагается, что документы UTF-8 должны иметь заголовок Content-Type, чтобы сказать, в какой кодировке они должны быть проанализированы. Чтобы добавить этот заголовок, вы можете добавить следующий код до или после загрузки ваших представлений:
$this->output->set_content_type('text/html; charset=utf-8');
В вашем документе вы должны добавить следующую строку:
<meta charset="utf-8">
Если вы визуализируете только текст, вы можете изменить часть заголовка, где он говорит text/html
к чему-то более подходящему, например, text/plain
,
Оказывается, я должен был сказать php, что utf-8 был значением по умолчанию в файле конфигурации. Все хорошо с тех пор!