我正在编写一个PHP HTML页面抓取程序,我需要了解它的更新日期。
我做这个$html = file_get_html(xyz.com)
是为了得到HTML。HTML中有一行的日期类似于 10/24/2016
。
我做到了:
if (strpos($html, '7nbsp;') !== false) {
if (strpos($html, ' </a>') !== false) {
echo "How to print drawing date--here!";
}
现在的困境是,我无法搜索 10/24/2016
,因为我无法知道网站更新的新日期是什么时候,可能是2016年10月30日或2016年11月12日…
理想情况下,我希望日期是一个字符串,如$date = "11/17/2016"
。如何搜索日期本身?
此代码适用于您:
preg_match('/' ([0-9]{1,2}'/[0-9]{1,2}'/[0-9]{4})/', $html, $matches);
这是一个正则表达式,用于搜索日期(只要日期格式正确(。已建立的匹配项将存储在"$matches"变量中。
@krasipenkov很接近,但OP要求它在$date var:中
$html = 'lblah
balh asdf asd
<mickey mouse="disney">f3rt6wergsdfg 1/19/2016 <more stuff="here">etc
asdf';
preg_match('/' ([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