我对php完全不熟悉,而且我很难更改img标签的src属性。 我有一个网站,使用Simple Html Dom php拉取页面的一部分,这里是代码:
<?php
include_once('simple_html_dom.php');
$html = file_get_html('http://www.tabuademares.com/br/bahia/morro-de-sao-paulo');
foreach($html ->find('img') as $item) {
$item->outertext = '';
}
$html->save();
$elem = $html->find('table[id=tabla_mareas]', 0);
echo $elem;
?>
此代码正确返回我想要的页面部分。但是当我这样做时,img标签附带原始页面的src:/assets/svg/icon_name.svg
我想要做的是更改原始src,使其如下所示:http://www.mywebsite.com/wp-content/themes/mytheme/assets/svg/icon_name.svg 我想将我网站的网址放在assets / svg / icon_name.svg前面 我已经尝试了一些教程,但我无法做任何工作。
有人可以在php中帮助一个菜鸟吗?
答案 0 :(得分:2)
我可以让它发挥作用。因此,如果有人有同样的问题,这就是我设法让代码工作的方式。
<?php
// Note you must download the php files simple_html_dom.php from
// this link https://sourceforge.net/projects/simplehtmldom/files/
//than include them
include_once('simple_html_dom.php');
//target the website
$html = file_get_html('http://the_target_website.com');
//loop thru all images of the html dom
foreach($html ->find('img') as $item) {
// Get a attribute ( If the attribute is non-value attribute (eg. checked, selected...), it will returns true or false)
$value = $item->src;
// Set a attribute
$item->src = 'http://yourwebsite.com/'.$value;
}
//save the variable
$html->save();
//findo on html the div you want to get the content
$elem = $html->find('div[id=container]', 0);
//output it using echo
echo $elem;
?>
就是这样!
答案 1 :(得分:-1)
您是否阅读了文档for read and modify attributes 按照那个
// Get a attribute ( If the attribute is non-value attribute (eg. checked, selected...), it will returns true or false)
$value = $e->href;
// Set a attribute
$e->href = 'ursitename'.$value;