Помогите, пожалуйста, дописать в функцию вывод адреса, того что в <a></a>.
Т.е. url адрес и текст ссылки.
<?
$string=file_get_contents("https://сайт.ру/iframe.php");
preg_match_all("/<h2?.*>(.*)<\/h2>/", $string, $matches);
foreach ($matches[1] as $h) print($h."<br/>");
?>
Сейчас получаю только содержимое <h2></h2>
Парсить нерегулярные структуры(html) регулярными выражениями - плохая идея.
Для разбора DOM есть специализированные встроенные средства.
$html = file_get_contents("https://example.ru/iframe.php");
$dom = new DOMDocument;
$dom->loadHTML($html);
foreach ($dom->getElementsByTagName('a') as $link) {
echo $link->nodeValue.': '.$link->getAttribute("href")."<br/>\n";
}
Fiddle.org
Для игнора ошибок в HTML можно воспользоваться этой конструкцией:
$internalErrors = libxml_use_internal_errors(true);
$dom->loadHTML($html);
libxml_use_internal_errors($internalErrors);
Для поиска текста заголовка в ссылке:
echo $link->getElementsByTagName('h2')[0]->nodeValue.': '.$link->getAttribute("href")."<br/>\n";
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости