从外部页面获取元素的内容 PHP
Get contents of element from external page PHP
我想让内容(CSS、子元素等)显示在 HTML 页面上,但此元素位于外部页面上。当我使用:
$page = new DOMDocument();
$page->loadHTMLFile('about.php');
$text = $page->getElementById('text');
echo $text->nodeValue;
我只得到文字,但 #text
还有一张儿童图片和一些 CSS。我可以得到(并回显)那些吗,有点像 iframe,但然后是一个元素。如果是,怎么做?
非常感谢。
我找到了解决方案,虽然它不会检索 CSS,但如果您只需要该元素及其子元素,这是我最好的选择。
使用 simple_html_dom.php 完成所有困难的事情。
我的外部页面:
<div id='text'>
<img src='img/dummy.png' align='left' alt='Image not available. Our apologies.'/>
<span>text</span><br/>
<p>
text
</p>
<p>
text
</p>
<p>
text
</p>
<div>
现在,我要显示外部页面内容的页面:
<?php include('../includes/simple_html_dom.php'); ?>
....
<?php
$html = file_get_html('about.php');
$ret = $html->find('div#text', 0);
echo $ret;
?>
这是做什么的,它与它的子元素相呼应,不幸的是没有 CSS。
也许您正在寻找的是DOMDocument::saveHTML()
。
如果您设置可选参数,它只输出这个特定节点。
$elm = $page->getElementById('text');
echo $elm->ownerDocument->saveHTML($elm);
我想让内容(CSS、子元素等)显示在 HTML 页面上,但此元素位于外部页面上。当我使用:
$page = new DOMDocument();
$page->loadHTMLFile('about.php');
$text = $page->getElementById('text');
echo $text->nodeValue;
我只得到文字,但 #text
还有一张儿童图片和一些 CSS。我可以得到(并回显)那些吗,有点像 iframe,但然后是一个元素。如果是,怎么做?
非常感谢。
我找到了解决方案,虽然它不会检索 CSS,但如果您只需要该元素及其子元素,这是我最好的选择。
使用 simple_html_dom.php 完成所有困难的事情。
我的外部页面:
<div id='text'>
<img src='img/dummy.png' align='left' alt='Image not available. Our apologies.'/>
<span>text</span><br/>
<p>
text
</p>
<p>
text
</p>
<p>
text
</p>
<div>
现在,我要显示外部页面内容的页面:
<?php include('../includes/simple_html_dom.php'); ?>
....
<?php
$html = file_get_html('about.php');
$ret = $html->find('div#text', 0);
echo $ret;
?>
这是做什么的,它与它的子元素相呼应,不幸的是没有 CSS。
也许您正在寻找的是DOMDocument::saveHTML()
。
如果您设置可选参数,它只输出这个特定节点。
$elm = $page->getElementById('text');
echo $elm->ownerDocument->saveHTML($elm);