【问题标题】:Get all images and return the src [duplicate]获取所有图像并返回 src [重复]
【发布时间】:2015-12-31 21:42:26
【问题描述】:

我下面的代码抓取了一些内容。在这个内容中有一些照片。 我怎样才能遍历这个内容找到所有的图像并返回它们的 src?

到目前为止我的代码:

$items = $html->find('div.post-single-content',0)->children(1)->outertext;
foreach($items $node) { 
$node->find('img');
}
print_r ($node);

【问题讨论】:

  • foreach($items as $node) 应该可以工作,假设您成功定位元素......

标签: php regex simple-html-dom


【解决方案1】:

不要使用正则表达式,使用解析器。示例:

$string = '<img src="You want this" style="width:200px;" />';
$doc = new DOMDocument();
$doc->loadHTML($string);
$images = $doc->getElementsByTagName('img');
foreach ($images as $image) {
     echo $image->getAttribute('src') . "\n";
}

输出:

你想要这个

【讨论】:

  • 优秀@chris85 !!!!!!我有一个问题......现在将照片上传到文件夹“images”并用新上传的 url 替换它们有多容易?
  • 我不确定你的意思。这只是从HTML 页面中拉出srcs ......也许rename 函数是您正在寻找的,php.net/manual/en/function.rename.php
  • 假设我们有字符串 $string = 'kitty 和狗 ';如何将这 2 张照片上传到另一个目录并将每个 src 替换为新的(新上传目录)。图片来自另一个网站,我想将其上传到我的服务器
  • 您是否尝试将图像从不属于您的服务器复制到您的服务器,或者图像已经在您的服务器上并且您想要移动它们?如果是前者,stackoverflow.com/questions/724391/saving-image-from-php-url。如果后者去掉 TLD 前面的文本并将其替换为 Web 目录的服务器路径。然后使用重命名功能。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-06-09
  • 1970-01-01
  • 2019-09-19
  • 2013-08-08
  • 2020-06-18
  • 2014-12-29
相关资源
最近更新 更多