Соскрести дату со страницы HTML

Я пишу программу-скребок для PHP-страниц, и мне нужно узнать дату ее обновления.

я сделал это $html = file_get_html(xyz.com) чтобы получить HTML. В одной строке HTML есть такая дата  10/24/2016,

Я сделал это:

if (strpos($html, '7nbsp;') !== false) {
if (strpos($html, '&nbsp;</a>') !== false) {
echo "How to print drawing date--here!";
}

Теперь вот дилемма, я не могу искать &nbsp;10/24/2016 потому что я не могу знать, когда новая дата будет обновлена, это может быть 30.10.2016 или 12.11.2016 …

В идеале я хотел бы, чтобы дата была в виде строки, например $date = "11/17/2016",
Как мне искать саму дату?

0

Решение

Этот код будет работать для вас:

 preg_match('/\&nbsp;([0-9]{1,2}\/[0-9]{1,2}\/[0-9]{4})/', $html, $matches);

Это регулярное выражение, которое ищет дату (если дата находится в правильном формате). Найденные совпадения будут сохранены в переменной $ match.

1

Другие решения

@krasipenkov был близок, но ОП попросил указать его в переменной $ date:

$html = 'lblah
balh asdf asd
<mickey mouse="disney">f3rt6wergsdfg &nbsp;1/19/2016 <more  stuff="here">etc
asdf';

preg_match('/\&nbsp;([0-9]{1,2}\/[0-9]{1,2}\/[0-9]{4})/', $html, $matches);
$date = $matches[1];

echo "your date found is $date";
[увидеть это бежать] http://sandbox.onlinephpfunctions.com/code/27419098cf4bc48a5ca2c683b046679b6c0af85c

0

По вопросам рекламы [email protected]