php - 解析 HTML 标签

标签 php mysql

我从数据库中获取值,例如:

<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/

相关文章:

php - 将默认值为空的非空列保留为空白时出现 MySQL 错误 1366

php - 使用 DEFAULT 值准备 MySQL INSERT/UPDATE 语句

php - 在数据库中搜索整个字符串/短语

MySQL : Access Denied for user

php - 如何获取onBeginRequest中的URL命名参数?

php - 从 PHP 读取服务器端 JavaScript

php - Pchart - 错误轴上的折线图

php - PHP MySQL 如何检查某个查询是否在数据范围内?

mysql - 用于 Web 应用程序的大容量数据的后端技术

mysql - 如果不是 View ,如何在sql表中查看公式