Я пишу функцию, которая выискивает src из первого тега изображения, найденного в html-файле. Следуя инструкциям в этой теме здесь, я получил что-то, что, кажется, работает:
preg_match_all('#<img[^>]*>#i', $content, $match);
foreach ($match as $value) {
$img = $value[0];
}
$stuff = simplexml_load_string($img);
$stuff = $stuff[src];
return $stuff;
Но после нескольких минут использования функции она стала возвращать ошибки, подобные этой:
предупреждение: simplexml_load_string () [0function.simplexml-load-string0]: объект: строка 1: ошибка синтаксического анализатора: преждевременное завершение данных в теге img строка 1 в пути / к / скрипту в строке 42.
и
предупреждение: simplexml_load_string () [0function.simplexml-load-string0]: tp: //feeds.feedburner.com/~f/ChicagobusinesscomBreakingNews? I = KiStN "border =" 0 "> в пути / к / сценарию в строка 42.
Я немного новичок в PHP, но, похоже, мое регулярное выражение неправильно обрабатывает HTML. Как я могу сделать его более "герметичным"?