Я не использовал PHP Simple HTML DOM Parser ... но я думаю, что ошибка может быть в том, что он возвращает вам строку, и вы применяете функцию find к той возвращенной строке, которая ожидает передачи html-объекта .. .
Предыдущее решение неверно, потому что он только что искал строку, а функция поиска ищет тег ..
Одним из возможных способов является то, что я прокомментировал ..
удалить первый 'h2' найти creteria и подать заявку на все 'a', что
foreach($html->find('a') as $k) {
echo $k->href . '<br>';
}
Другое возможное решение - использовать php inbuild file_get_contents и регулярно искать
выражения ... я сделал это для вас ...
$html = file_get_contents('new.php');
$reg_exUrl = "/(http|https|ftp|ftps)\:\/\/[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}(\/\S*)?/";
$uql=array();
preg_match($reg_exUrl, $html, $url);
print_r($url);