从基于关键字的远程站点检索的源代码中隐藏某些内容

时间:2013-05-12 03:38:43

标签: php html

我正在使用文件获取内容来获取远程页面的源代码,然后将其回显到我的页面

效果很好我想隐藏源代码中的某些<td>并阻止它们显示在

我的页面

我有两个Code Snippet,想要整合两个

此代码$('tr:has(td:contains("desktop"))').hide()

隐藏具有工作桌面的td

和此代码

<?php
    //Get the url
    $url = "http://remotesite/page.html";
    $html = file_get_contents($url);
    echo $html;
?>

将获取远程页面源

如何将两者写在一起。

1 个答案:

答案 0 :(得分:0)

您可以在使用DOMDocumentXPath输出之前从PHP中删除这些元素:

<?php

    $html = '<table>
    <tr><td>test</td></tr>
    <tr><td>a desktop</td></tr>
    </table>';

    $doc = new DOMDocument(); // create DOMDocument
    $doc->loadHTML($html); // load HTML you can add $html
    $xpath = new DOMXpath($doc);
    $elements = $xpath->query("//td[contains(., 'desktop')]"); // search td's that contain 'desktop'

    foreach($elements as $el){
        $parent = $el->parentNode;
        //$parent->parentNode->removeChild($parent); // remove TR
        $parent->removeChild($el); // remove TD
    }

    echo $doc->saveHTML(); // save new HTML
?>