如果您在浏览器中查看页面源代码,您将看到您的代码实际上输出:
ggukjbgfjI:2<EiK6<br><br>ggukjbgfjI:2<EiK6
但是在浏览器中你只能看到:
ggukjbgfjI:2
ggukjbgfjI:2
那么什么给出了呢?这是因为
<
是 <html>
标签的起始字符,这意味着浏览器会将其中的所有内容解析为 HTML 代码,直到遇到 >
字符。
解决方案,是将
<
编码为 HTML 实体,即。 <
如果您有代码:
$x = 'ggukjbgfjI:2<';
$y = 'EiK6';
$z = 'ggukjbgfjI:2<EiK6';
echo $x;
echo $y;
echo "<br><br>";
echo $z;
它将输出,正如你所期望的:
ggukjbgfjI:2<EiK6
ggukjbgfjI:2<EiK6
还有一个内置的 PHP 函数
htmlspecialchars
可以自动为您编码特殊字符,这样您的输出就不会与任何特殊的 HTML 字符混淆。例如:
$x = 'ggukjbgfjI:2<';
$y = 'EiK6';
$z = 'ggukjbgfjI:2<EiK6';
echo htmlspecialchars($x);
echo htmlspecialchars($y);
echo "<br><br>";
echo htmlspecialchars($z);