使用PHP将所有链接URL存储在一个数组中

使用PHP将所有链接URL存储在一个数组中,php,arrays,url,search,Php,Arrays,Url,Search,我试图解析一个html文档,并用php将URL存储在一个数组中。例如,如果文档的源代码是: Blah blah blah <a href="http://google.com">link</a> blab <a href="http://yahoo.com">more links</a> ababasadsf 废话废话 阿巴巴萨德夫 如何查找和获取链接的href属性并将每个链接存储为数组元素?使用,您可以遍历DOM并找到定义了href属性的锚(

我试图解析一个html文档,并用php将URL存储在一个数组中。例如,如果文档的源代码是:

Blah blah blah <a href="http://google.com">link</a> blab
<a href="http://yahoo.com">more links</a> ababasadsf
废话废话
阿巴巴萨德夫
如何查找和获取链接的href属性并将每个链接存储为数组元素?

使用,您可以遍历DOM并找到定义了
href
属性的锚(
):

$dom = phpQuery::newDocument($htmlSource);
$anchors = $dom->find('a[href]');

$urls = array();

if($anchors) {
  foreach($anchors as $anchor) {
    $anchor = pq($anchor);
    $urls[] = $anchor->attr('href');
  }
}