Разрабатываю ссылки аналогичные в социальных сетях. Получаю метаданные для этих ссылок.
Для примера использовал 2 крупных сайта. znak.com и ria.ru У обоих кодировка одинаковая: UTF-8
Но почему-то один ria.ru возвращает данные в UTF, а znak.com нет.
Код:
libxml_use_internal_errors(true);
$c = file_get_contents($matches[0]);
$d = new DomDocument();
$d->loadHTML($c);
$xp = new domxpath($d);
foreach ($xp->query("//meta[@property='og:title']") as $el) {
$og_title = htmlentities($el->getAttribute("content"), ENT_QUOTES);
}
foreach ($xp->query("//meta[@property='og:description']") as $el) {
$og_description = htmlentities($el->getAttribute("content"), ENT_QUOTES);
}
foreach ($xp->query("//meta[@property='og:image']") as $el) {
$og_image = htmlentities($el->getAttribute("content"), ENT_QUOTES);
}
Сделайте лучше запрос через curl
вместо file_get_contents
. И попробуйте применить эти строчки кода curl_setopt($ch, CURLOPT_ENCODING ,"");
curl_setopt($ch, CURLOPT_HEADER, true);
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Не работает вывод данных из таблицы, хотя раньше работалоКак можно пофиксить?
Потому что созданный вами $path, указывает на директорию, а писать в неё Вы пытаетесь, как в файл
Собираюсь строить систему мониторинга ошибок на основе сислога => ELKПишу ошибки из PHP в сислог: