PHP: извлечь текст из строки между двумя конкретными тегами

Я собираю функцию быстрого извлечения в PHP. По сути, он прочитает содержимое заданного URL-адреса и извлечет необходимый HTML-код. Затем он поместит код на новую страницу. Теперь у меня все работает, кроме одного.

У меня есть строка с содержимым URL-адреса, и теперь я хочу извлечь текст между двумя тегами. Допустим, я хочу начать копирование контента с определенного тега. Это легко, поскольку у этих тегов есть классы.

Так что я бы начал функцию с "" Он просто ищет в документе весь текст, который соответствует этому. Однако я столкнулся с проблемой. В разделе, который я хочу скопировать, есть и другие теги. Таким образом, если я скажу функции прекратить извлечение на «», парсер прекратит чтение в конце случайного тега. Может ли кто-нибудь помочь мне написать немного PHP-кода, который гарантирует, что тег, на котором останавливается функция, является закрывающим тегом для «», а не для какого-то случайного тега, который оказался в строке?

Заранее спасибо.


person user1219706    schedule 19.02.2012    source источник
comment
Почему люди так любят Ктулху?   -  person Madara's Ghost    schedule 20.02.2012
comment
дубликат примерно 10 триллионов других вопросов SO.   -  person    schedule 20.02.2012
comment
FAQ по PHP: stackoverflow .com/questions/3577641/   -  person Zulkhaery Basrul    schedule 20.02.2012


Ответы (1)


Невозможно сделать это и учесть все возможное содержимое между тегами. Используйте XmlDocument и проанализируйте HTML.

person scibuff    schedule 19.02.2012