我希望使用PHP从锚链接中提取图像href值。见下图:
开始:
<a href="http://someimagelink.com/image34.jpg">image34.jpg</a>
目标:
http://someimagelink.com/image34.jpg
更具体地说,如何删除<a href="
和">image34.jpg</a>
,以便它适用于任何给定的图像?
答案 0 :(得分:2)
您应该查看PHP的DOM解析器:http://php.net/manual/en/domdocument.loadhtml.php
答案 1 :(得分:2)
你也可以像这样使用Simple HTML DOM Parser:
$html = file_get_html('http://www.google.com/');
// Find all images
foreach($html->find('img') as $element)
echo $element->src . '<br>';
答案 2 :(得分:0)
做这样的事情怎么样?我不确定这是不是一个好的解决方案......想法?
$html = "<a href='http://www.imagelink.com/images33.jpg'>images33.jpg</a>";
preg_match_all('/href=[\'"]?([^\s\>\'"]*)[\'"\>]/', $html, $matches);
$hrefs = ($matches[1] ? $matches[1] : false);
$url = implode('',$hrefs);
echo "<a href='$url'><img src='$url' width='100'></a>" ;
答案 3 :(得分:0)
您可以使用PHP DOMDocument来获取所需内容。代码看起来像这样:
$dom_doc = DOMDocument::loadHTML($html_string);
$a_tag_node_list = $dom_doc->getElementsByTagName('a');
foreach($a_tag_node_list as $a_tag_node) {
echo $a_tag_node->attributes->getNamedItem("href")->nodeValue;
}