我有许多链接,如下所示:
<a href="http://url.com/?foo=bar&p=20" title="foo">Foo</a>
<a href="http://url2.com/?foo=bar&p=30" title="foo">Foo</a>
Run Code Online (Sandbox Code Playgroud)
我正在尝试p
从每个href
找到的参数中提取参数.所以在这种情况下,我有一个最终结果数组array (20, 30)
.
什么是一个很好的正则表达式?谢谢.
不要尝试使用正则表达式解析HTML; 使用HTML解析器,如PHP的DOM库或PHP Simple HTML DOM Parser.然后使用parse_url
和解析URL 和查询字符串parse_str
.
这是一个例子:
$html = str_get_html('…');
$p = array();
foreach ($html->find('a[href]') as $a) {
parse_str(parse_url($a->getAttribute('href'), PHP_URL_QUERY), $args);
if (isset($args['p'])) $p[] = $args['p'];
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
342 次 |
最近记录: |