6 小时的研究,由于我正处于学习阶段,所以我无法弄清楚,所以我决定在这个有用的社区问人
我有像 remotesite.com/page1.html 这样的远程页面,我们使用函数 file_get_contents 来获取它的源,然后我们使用 DOMDocument 在将它打印到我们的页面之前编辑这个源
$url = "remotesite.com/page1.html";
$html = file_get_contents($url);
$doc = new DOMDocument(); // create DOMDocument
libxml_use_internal_errors(true);
$doc->loadHTML($html); // load HTML you can add $html
//here we do some edits to remove or add contents
我想在打印之前将下面的 Div 添加到从远程站点获取的 to html 代码中:
<div style="float: right; padding-right: 2px;"><a class="open_event_tab" target="_blank" href="some-hard-coded-text-here_'+content+'_title_'+lshtitle+'_event_'+id+'.html" >open event</a></div>
经过我的搜索,我设法编写了创建 div 的函数,这是我的代码
function createDivNode($doc) {
$divNode = $doc->createElement('div');
$divNode->setAttribute('style', 'float: right; padding-right: 2px;');
$aNode = $doc->createElement('a', 'openEvent');
$aNode->setAttribute('class', 'open_event_tab');
$aNode->setAttribute('target', '_blank');
$aNode->setAttribute('href', 'some-hard-coded-text-here_'+content+'_title_'+lshtitle+'_event_'+id+'.html');
$divNode->appendChild($aNode);
return $divNode;
但现在我有两个问题:
1-href 的软编码部分 ( '+content+'_title_'+lshtitle+'_event_'+id+'
) 不起作用。
2-我不知道将 div 添加到我想要的位置
我想遍历从远程站点获取的 html 源代码,以获取每个 td,如下所示,并在关闭 td 标记之前添加 div
<td colspan="2">
<b>Video </b>
<span class="section">Sports</span><b>: </b>
<span id="category466" class="category">Motor Sports</span>
//here i want to add my div
</td>