Как получить местоположение ссылки с помощью preg_match в PHP

100
11

Как получить местоположение ссылки из следующего script с помощью preg_match


<html><head><title>Object moved</title></head><body>
<h2>Object moved to <a href="www.example.com">here</a>.</h2>
</body></html>

Спасибо

спросил(а) 2011-05-18T14:10:00+04:00 9 лет, 5 месяцев назад
1
Решение
91

Во-первых: если вы используете CURL-использование


    <?php 
// ....
curl_setopt($ch,CURLOPT_FOLLOWLOCATION)
?>

еще

Местоположение находится в заголовке "Местоположение: http.."


попытайтесь получить заголовки get_headers
или проанализировать этот вывод с помощью этого шаблона,


$pattern = 'href=\"(?<url>[\"]+)\"'

ответил(а) 2011-05-18T14:12:00+04:00 9 лет, 5 месяцев назад
42

Если я правильно понял, вы просто хотите извлечь URL-адрес из вашего html-кода? Если это так, вы можете сделать это следующим образом:

preg_match('/object moved to <a href="(.+?)"> here/,$html_text,$match');
$url = $match[1];

ответил(а) 2011-05-18T16:10:00+04:00 9 лет, 5 месяцев назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема