运算符在没有 space 时在双引号内执行
Operators execute withing double quote when there is no space
我不确定以前有人问过这个问题。
我用旧的 PHP
代码从数据库中获取一些结果。我最近注意到它没有按预期工作。当我调试代码时发现了问题,但是我仍然不知道背后的原因。
假设我有如下代码,
$text1 = "A";
echo "BBB<$text1"; // print BBB
echo "<br/><br/>";
echo "BBB < $text1"; // print BBB < A
我很确定我错过了一些 PHP 基本概念。但我仍然找不到它。
当我在带 space 和不带 space 的双引号中使用 <
时,我得到了两个不同的结果。谁能解释一下这是怎么发生的?
要正确显示第一个字符串,您应该使用 htmlentities() 函数:
$text1 = "A";
echo htmlentities("BBB<$text1"); // print BBB<A
echo "<br/><br/>";
echo "BBB < $text1";
// BBB<A</br> is interpretted as a html tag
我不确定以前有人问过这个问题。
我用旧的 PHP
代码从数据库中获取一些结果。我最近注意到它没有按预期工作。当我调试代码时发现了问题,但是我仍然不知道背后的原因。
假设我有如下代码,
$text1 = "A";
echo "BBB<$text1"; // print BBB
echo "<br/><br/>";
echo "BBB < $text1"; // print BBB < A
我很确定我错过了一些 PHP 基本概念。但我仍然找不到它。
当我在带 space 和不带 space 的双引号中使用 <
时,我得到了两个不同的结果。谁能解释一下这是怎么发生的?
要正确显示第一个字符串,您应该使用 htmlentities() 函数:
$text1 = "A";
echo htmlentities("BBB<$text1"); // print BBB<A
echo "<br/><br/>";
echo "BBB < $text1";
// BBB<A</br> is interpretted as a html tag