file_get_contents return& g t;而不是<

时间:2011-10-06 18:44:38

标签: php wampserver

我有这个

 $this->CompileString_ = file_get_contents("test.html");
 echo $this->CompileString_;

test.html

<div>test</div>
<div>test</div>

问题是file_get_contents返回&gt;而不是获取&lt;

为什么?。

我正在使用wampserver 2和php 5.3.8

1 个答案:

答案 0 :(得分:1)

您好尝试将文件重命名为test.txt,也许php会自动为.html文件编码。

使用htmlentitydecode();

   <?php
    $orig = "I'll \"walk\" the <b>dog</b> now";

    $a = htmlentities($orig);

    $b = html_entity_decode($a);

    echo $a; // I'll &quot;walk&quot; the &lt;b&gt;dog&lt;/b&gt; now

    echo $b; // I'll "walk" the <b>dog</b> now


    // For users prior to PHP 4.3.0 you may do this:
    function unhtmlentities($string)
    {
        // replace numeric entities
        $string = preg_replace('~&#x([0-9a-f]+);~ei', 'chr(hexdec("\\1"))', $string);
        $string = preg_replace('~&#([0-9]+);~e', 'chr("\\1")', $string);
        // replace literal entities
        $trans_tbl = get_html_translation_table(HTML_ENTITIES);
        $trans_tbl = array_flip($trans_tbl);
        return strtr($string, $trans_tbl);
    }

    $c = unhtmlentities($a);

    echo $c; // I'll "walk" the <b>dog</b> now

    ?>