【问题标题】:The characters in my HTML saved from DOMdocument become escaped从 DOMdocument 保存的 HTML 中的字符被转义
【发布时间】:2012-02-04 01:17:59
【问题描述】:

我在使用 PHP 的 DOMdocument 时遇到了一个恼人的问题。我已经加载了 HTML,并更改了一些元素的属性。我想保存更改后的 HTML,并输出它。 奇怪的是,当我使用 ->saveHTML()->saveXML() 时,我的结束标签的斜杠被转义了。我可以用正则表达式删除转义,但我想知道是否有更清洁的方法......

libxml_use_internal_errors(true);
            $dom = new DOMDocument();
            $dom->loadHTML ($roosterHTML);
            $dom->preserveWhiteSpace = false;
            libxml_clear_errors();
            libxml_use_internal_errors(false);

            $tables = $dom->getElementsByTagName('table');
            $cols = $tables->item(0)->getElementsByTagName('td');
            $name = preg_replace("/(\\n|\\r| )/", "", $cols->item(3)->nodeValue);
            $sirname = preg_replace("/(\\n|\\r| )/", "", $cols->item(2)->nodeValue);
            $class = preg_replace("/(\\n|\\r| )/", "", $cols->item(1)->nodeValue);
            $header =  "Rooster van $name $sirname ($class)";

            $rooster = $tables->item(1);
            $firstRow = true;
            foreach ($rooster->getElementsByTagName('tr') as $row) {
                if ($firstRow) {
                    $firstRow = false;
                    continue;
                }
                $firstCol = true;
                foreach ($row->getElementsByTagName('td') as $col) {
                    if ($firstCol) {
                        $firstCol = false;
                        continue;
                    }
                    $text = $col->nodeValue;
                    $col->setAttribute('style','background-color:#FF0');
                    //$return.= $text;
                }
            }

            $rooster = $dom->saveXML($rooster);

测试(只需点击提交,发送一个 POST 值): http://bit.ly/ymK3DA

【问题讨论】:

    标签: php html dom


    【解决方案1】:

    不是,转义是json造成的
    这意味着此页面不是输出 HTML,而是类似 json 的纯文本

    【讨论】:

    • 谢谢,我正要结束这个问题,我也注意到了。
    猜你喜欢
    • 2011-01-16
    • 2015-05-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-14
    • 2013-08-25
    • 2013-03-18
    • 1970-01-01
    相关资源
    最近更新 更多