一尘不染

使用PHP获取img src

html

在此示例中,我想将SRC属性转换为变量:

<img border="0" src="/images/image.jpg" alt="Image" width="100" height="100" />

因此,例如-我想要一个变量$foo = "/images/image.jpg"。重要!src属性将是 dynamic
,因此不能进行硬编码。有什么快速简便的方法可以做到这一点吗?

谢谢!

编辑:图像将是一个巨大的字符串的一部分,基本上是新闻故事的内容。因此,图像只是其中的一部分。

EDIT2:此字符串中将有更多图像,我只想获取第一个的src。这可能吗?


阅读 548

收藏
2020-05-10

共1个答案

一尘不染

使用类似的HTML解析器DOMDocument,然后使用以下方法评估所需的值DOMXpath

$html = '<img id="12" border="0" src="/images/image.jpg"
         alt="Image" width="100" height="100" />';

$doc = new DOMDocument();
$doc->loadHTML($html);
$xpath = new DOMXPath($doc);
$src = $xpath->evaluate("string(//img/@src)"); # "/images/image.jpg"

或对于那些确实需要节省空间的人:

$xpath = new DOMXPath(@DOMDocument::loadHTML($html));
$src = $xpath->evaluate("string(//img/@src)");

对于那里的一线客:

$src = (string) reset(simplexml_import_dom(DOMDocument::loadHTML($html))->xpath("//img/@src"));
2020-05-10