В настоящее время я работаю над веб-сайтом, и мне нужно получить некоторые данные из некоторого API
Когда я создаю Guzzle Request, получаю тело, которое выдает мне ошибку
'Неправильные символы UTF-8, возможно, неправильно закодированные'
$url = 'https://www.google.com/search?q=' . $this->domain;
$guzzleGet = $this->guzzle->get($url);
$google = $guzzleGet->getBody()->getContents());
$dom = HtmlDomParser::str_get_html($google); //This can't process the $google because of the Malformed UTF8
Итак, я провел некоторое исследование и нашел что-то, что должно работать. Но, это не работает, это похоже на ту же ошибку. Теперь у меня есть этот код
$url = 'https://www.google.com/search?q=' . $this->domain;
$guzzleGet = $this->guzzle->get($url);
$type = $guzzleGet->getHeader('content-type');
$parsed = Psr7\parse_header($type);
$google = mb_convert_encoding($guzzleGet->getBody()->getContents(), 'UTF-8', $parsed[0]['charset'] ?: 'UTF-8');
$dom = HtmlDomParser::str_get_html($google);
Что я делаю не так? Когда я записываю содержимое $google
в журнал, он выглядит для меня как какой-то правильный HTML (как и ожидалось)