如何从php字符串中获取图像src属性值?

我试着在这里关注一些关于preg_match和DOM的问题,但是一切都飞到我头上.

我有一个像这样的字符串:

$String = '<td class="borderClass" width="225" style="border-width: 0 1px 0 0;" valign="top">
<div style="text-align: center;">
    <a href="http://myanimelist.net/anime/10800/Chihayafuru/pic&pid=35749">
    <img src="http://cdn.myanimelist.net/images/anime/3/35749.jpg" alt="Chihayafuru" align="center">
    </a>
</div>';

我现在正试图从中获取图像src属性值.我尝试使用这段代码,但我无法弄清楚我做错了什么.

$doc = new DOMDocument();
$dom->loadXML( $String );
$imgs = $dom->query("//img");
for ($i=0; $i < $imgs->length; $i++) {
    $img = $imgs->item($i);
    $src = $img->getAttribute("src");
}
$scraped_img = $src;

我如何使用PHP获取图像src属性?

解决方法:

以下是您可以使用的更正代码:

复制代码
$String = '<td class="borderClass" width="225" style="border-width: 0 1px 0 0;" valign="top">
<div style="text-align: center;">
    <a href="http://myanimelist.net/anime/10800/Chihayafuru/pic&pid=35749">
    <img src="http://cdn.myanimelist.net/images/anime/3/35749.jpg" alt="Chihayafuru" align="center">
    </a>
</div>';
$doc = new DOMDocument();
libxml_use_internal_errors(true);
$doc->loadHTML( $String );
$xpath = new DOMXPath($doc);
$imgs = $xpath->query("//img");
for ($i=0; $i < $imgs->length; $i++) {
    $img = $imgs->item($i);
    $src = $img->getAttribute("src");
}
echo $src;
复制代码

 

OUTPUT

 

http://cdn.myanimelist.net/images/anime/3/35749.jpg

 

posted @   山上小和尚  阅读(222)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示