保持白色空间与htmlentities

时间:2016-05-02 04:04:58

标签: php file-get-contents html-entities nl2br

目前,这是我的代码

$str = file_get_contents($sFile);
echo nl2br(htmlentities($str));

当我输出文件时,如何保留文件中的空格(制表符和多个空格)?

示例输入:

if(a==b){
  code   
    more code 
}

应准确输出(应用htmlentities),但目前输出

if(a==b){
code
more code
}

如何保留空白?

2 个答案:

答案 0 :(得分:1)

将输出包裹在<pre>...</pre>标记中:

<pre>
if(a==b){
  code   
    more code 
}
</pre>

浏览器会忽略多余的空格,因此您必须告诉它不要忽略它。

答案 1 :(得分:0)

您可以使用html实体作为空间来保留空间:

echo str_replace([' ', "\t"], ['&nbsp;', '&nbsp;&nbsp;'], nl2br(htmlentities($str)));