我从数据库中获取值,例如:
<p><img alt="" src="images/1.jpg" style="width: 2450px; height: 1054px;" /></p>
并且只想获取src="images/1.jpg"
但不知道如何。请指导我
最佳答案
如果您需要源代码,请使用 DOM 解析器:
// Construct a new DOMDocument with your fragment
$domDoc = new DOMDocument;
$domDoc->loadHTML( '<p><img src="images/1.jpg" style="width: 2450px;" /></p>' );
// Locate the first image the document
$img = $domDoc->getElementsByTagName( "img" )->item( 0 );
// Echo its src value
echo $img->attributes->getNamedItem( "src" )->nodeValue;
结果:http://codepad.org/oMXGK9Iu
理想情况下,您应该在访问项目 #0 之前确保图像元素存在。同样,在跳出并捕获它们之前,您需要确保属性存在。
进一步阅读:http://www.php.net/manual/en/class.domdocument.php
如果您只想抓取文本的特定部分,您可以使用简单的正则表达式:
// Prep our html
$html = '<p><img src="images/1.jpg" style="width: 2450px;" /></p>';
// Look for the source string
preg_match( '/src=\".*?\"/', $html, $matches );
// If we found it, spit it out.
echo $matches ? $matches[0] : "No source";
关于php - 解析 HTML 标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12141550/