php文件_get_contents()转换html实体,如&;ouml;至ö;

php文件_get_contents()转换html实体,如&;ouml;至ö;,php,html,entities,Php,Html,Entities,我尝试在文本区域中用 <textarea ...> <?php echo file_get_contents("file.php"); ?> </textarea> 但它会转换html实体,如ö到。因为它是php代码,所以我不能使用像htmlspecialchars这样的转换,因为它会阻塞和引用等 编辑: 我用浏览器检查了源代码,确实有一个错误 请帮忙,谢谢 我认为您的文件.php中有一些非UTF-8字符。试试这个: $content

我尝试在文本区域中用

<textarea ...>
<?php echo file_get_contents("file.php"); ?>
</textarea>

但它会转换html实体,如
ö到。因为它是php代码,所以我不能使用像htmlspecialchars这样的转换,因为它会阻塞和引用等

编辑:

我用浏览器检查了源代码,确实有一个错误


请帮忙,谢谢

我认为您的
文件.php
中有一些
非UTF-8
字符。试试这个:

     $content = file_get_contents('/tmp/file.php');
     $content = mb_convert_encoding($content, 'UTF-8',mb_detect_encoding($content, 'UTF-8, ISO-8859-1', true)); 
     print_r($content);
你可以参考这个评论

上述代码的浏览器输出将为:

<a href="https://www.w3schools.com">Go to w3schools.com</a>

htmlspecialchars将更改:

< &ouml;
没关系。 它将显示在文本区域:

< &ouml;
使用jQuery在Chrome中测试:

$('#layout').html('<form method="POST"><textarea name="x">&lt;&amp;ouml;</textarea><input type="submit" /></form>')
$('#layout').html('&;ouml;'))

您如何看待输出?通过浏览器?这将为您完成转换。看看浏览器收到的源代码。给我们一个我写的.php可能重复的文件的示例。我无法转换它,因为应该显示的包含html标记,这些标记将被嵌入文本区域,将用于编辑代码,所以我需要真实的和真实的
< &ouml;
&lt; &amp;ouml;
< &ouml;
< &ouml;
&lt; &amp;ouml;
$('#layout').html('<form method="POST"><textarea name="x">&lt;&amp;ouml;</textarea><input type="submit" /></form>')