如何用PHP输出<script>标签为明文内容而非被浏览器解析执行
PHP输出script标签为明文的解决方案
问题原因
直接输出<script>标签时,浏览器会将其识别为HTML脚本标签解析执行,不会将标签本身作为明文渲染到页面,因此只能看到前序输出的test内容。
解决方法
使用PHP内置的htmlspecialchars()函数对需要输出为明文的HTML内容做转义处理,该函数会自动将<、>、引号等特殊字符转换为对应的HTML字符实体,浏览器会将其识别为普通文本展示。
修正后的代码示例
<?php echo "test"; echo "<br>"; echo htmlspecialchars('<script src="http://mywwebiste./mycode.js" type="text/javascript"></script>'); ?>
如果需要转义所有支持的HTML实体,也可以替换为htmlentities()函数,当前场景下htmlspecialchars()已经可以满足需求,性能更优。
内容的提问来源于stack exchange,提问作者PhiDAo
相关产品推荐
相关产品推荐

