php - 如何阻止 file_get_contents [PHP] 的结果被处理为 HTML?

标签 php

我正在使用PHP函数file_get_contents读取并显示一些 .txt 的内容文件。

如果文件的内容是 HTML 代码,我如何将其显示为字符串而不是页面将其视为 HTML?

我当前的代码是这样的:

<?php
$load_desc = file_get_contents(/url/of/my/file.txt);
echo "<div>$load_desc</div>"
?>

如果文件内容是纯文本,则效果很好,但例如,如果内容包含 <img>标签,将显示图像。

抱歉,如果这真的很容易。我刚刚开始接触 PHP。

最佳答案

使用 htmlspecialchars 关于它:

<?php
$load_desc = file_get_contents(/url/of/my/file.txt);
echo "<div>" . htmlspecialchars($load_desc) . "</div>"
?>

这会将不安全字符转换为其实体引用:

  • &&amp;
  • "&quot;
  • <&lt;
  • >&gt;

这意味着您可以安全地将它们注入(inject) HTML,并且标签将显示为纯文本。

关于php - 如何阻止 file_get_contents [PHP] 的结果被处理为 HTML?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5949433/

相关文章:

php - 对二维数组进行排序

php - 为什么 htmlentities 在每行末尾的文本区域内添加 2 个额外的新行?

php - Laravel 5 Hasmanythrough 逆向查询

php - 在结帐页面 magento 更新产品数量

javascript - javascript下如何使用onchange事件

javascript - 有没有任何事件/方式我们可以知道文件何时完成下载?

javascript - 如何在 Javascript 中切换 <td> 'table data cells'?

php mysql 搜索只给出 1 个结果

java - 如何找到最近的周一?

php - 为什么我不应该在 PHP 中使用 mysql_* 函数?