Я пытаюсь создать функцию на своем веб-сайте, где пользователи могут загружать ссылки, например, Digg. У меня есть код, который берет исходный код HTML с URL-адреса, который пользователь загружает на мой веб-сайт, и сохраняет его в файле .txt. Затем я хочу захватить содержимое в теге
<meta name="content" description="GRAB THIS">
при условии, что этот тег существует. Иногда это работает, но иногда это не работает, даже несмотря на то, что исходный код для этой конкретной веб-страницы содержит необходимый метатег в точности, как я указал в своем коде. Я заметил, что это, кажется, не работает должным образом, если контент "GRAB THIS" содержит html-сущности (& и т. Д.). Пожалуйста, дайте мне знать, если у вас есть идеи, как заставить это работать. Вот мой код:
$html_data = file_get_contents( $path_to_txt_file_that_contains_html );
preg_match( '#<meta name="description" content="(.+?)">#si', $html_data, $tor;
$tor = str_replace ( '<meta name="description" content="' , "", $tor[0] );
$tor = str_replace ( '">', "", $tor );
Иногда $ tor по-прежнему содержит
<meta name="description" content="CONTENT"
но без закрытия>, поэтому мой код ломается, как только я помещаю это в базу данных mySQl. Есть идеи, что я делаю не так? Заранее спасибо за любую помощь!