抓取 html 中具有最高值的参数
Grab parameter in html with highest value
我有 $html
:
$html = '<div>
<a href="./?pg=99"></a>
<a href="./?pg=32"></a>
<a href="./?pg=95"></a>
<a href="./?pg=1"></a>
//etc
';
如何浏览它并获取 pg
的最高值?所以在上面的例子中,我们得到:
$result = 99;
可能的方法是通过 preg_match_all()
和正则表达式定位 /?pg=
个案例,对它们进行排序并获取最高数值。
您需要转义 ./?
(导致 \.\/\?
)个字符才能正确获取数字,对连续链接使用 U
标志,然后使用 max()
:
// number --v U --v
preg_match_all('/<a.*href="\.\/\?pg=(\d+)".*>(?:.*)<\/a>/U', $html, $matches);
// numbers are our capture group 1 --> $matches[1]
$result = max($matches[1]);
var_dump($result);
// 99
无需订购号码。
我有 $html
:
$html = '<div>
<a href="./?pg=99"></a>
<a href="./?pg=32"></a>
<a href="./?pg=95"></a>
<a href="./?pg=1"></a>
//etc
';
如何浏览它并获取 pg
的最高值?所以在上面的例子中,我们得到:
$result = 99;
可能的方法是通过 preg_match_all()
和正则表达式定位 /?pg=
个案例,对它们进行排序并获取最高数值。
您需要转义 ./?
(导致 \.\/\?
)个字符才能正确获取数字,对连续链接使用 U
标志,然后使用 max()
:
// number --v U --v
preg_match_all('/<a.*href="\.\/\?pg=(\d+)".*>(?:.*)<\/a>/U', $html, $matches);
// numbers are our capture group 1 --> $matches[1]
$result = max($matches[1]);
var_dump($result);
// 99
无需订购号码。