Как решить проблемы с кодировкой?

Приветствую.

Ситуация следующая:
Получаю XML от api яндекса. mb_detect_encoding пишет ASCII
Записываю в БД.

Пробовал 2 варианта:
а) разбирать XML на объекты и записывать каждый по отдельности
б) записывать полностью весь xml

Записывать пробовал в две разные БД на разных хостингах.

Постоянно испытываю проблемы с кодировкой.

Текущее состояние такого:
Записал весь xml в БД.
$response = $app["dbs"]['local'] -> fetchAssoc("SELECT response FROM api_response WHERE id = '" . $max_id["max(id)"] . "'");
	
	$data = new SimpleXMLElement($response["response"]);


Получаю:
ning: SimpleXMLElement::__construct(): Entity: line 163: parser error : Input is not proper UTF-8, indicate encoding ! Bytes: 0xD0 0x3F 0xD0 0x9A in .../src/api.php on line 189


Куда смотреть? В чем может быть проблема?

ps. стоит добавить, наверное, скрин БД:
32dea37664244148a7b5b63d1dedfda7.png
  • Вопрос задан
  • 3434 просмотра
Решения вопроса 1
@Ruslan72
После коннекта к БД:
mysql_query("SET NAMES 'utf8';"); 
mysql_query("SET CHARACTER SET 'utf8';"); 
mysql_query("SET SESSION collation_connection = 'utf8_general_ci';");


или подставь вместо utf8 нужную
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
pavel_salauyou
@pavel_salauyou
Symfony2 & Angular разработчик
пробовали конвертить файл в utf-8 с помощью mb_convert_encoding?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы