php - 从字符串中获取所有图片 url

标签 php html string image parsing

<分区>

Possible Duplicate:
How to extract img src, title and alt from html using php?

你好,
我找到了从字符串中获取第一张图像的解决方案:

preg_match('~<img[^>]*src\s?=\s?[\'"]([^\'"]*)~i',$string, $matches);

但我无法从字符串中获取所有图像。
还有一件事...如果图像包含替代文本(alt 属性)如何获取它并保存到另一个变量?
提前致谢,
伊利亚

最佳答案

不要用正则表达式这样做。相反,解析 HTML。看看Parse HTML With PHP And DOM .这是 PHP 5.2.x(可能更早)的标准特性。基本上获取图片的逻辑大致是:

$dom = new domDocument;
$dom->loadHTML($html);
$dom->preserveWhiteSpace = false;
$images = $dom->getElementsByTagName('img');
foreach ($images as $image) {
  echo $image->getAttribute('src');
}

这对于适应查找图像应该是微不足道的。

关于php - 从字符串中获取所有图片 url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1513418/

相关文章:

php - 更新模式以在 symfony 的 MySQL 数据库上创建长文本字段

php - 需要面向对象设计的建议 : a collection of items

php - 通过php备份mysql数据库报错

javascript - 基于数组插入html

html - 将html悬停在右侧,同时在右侧添加文本

javascript - 根据下拉框切换添加和删除html

Ruby:删除字符串开头的空白字符

php - mysqldump 没有正确运行

从 R 中的 .sdf 文件中提取唯一字段的正则表达式

Python按开始和结束字符拆分字符串