PHP字符串 - '<'有什么问题?

时间:2015-04-09 00:08:39

标签: php string concatenation

我正在使用字符串,不知何故,如果有"<"那么php就会决定忽略以下字符串。内。我无法找到任何相关信息。看这个例子:

$str = 'foo<bar'
// echoes foo, foo<bar expected

有没有我不了解的字符串运算符?包裹在里面的字符串&#39; &#39;不应该用php评估,对吧?

4 个答案:

答案 0 :(得分:2)

您的浏览器可能将其解释为HTML,并将<bar视为部分HTML标记。由于它不知道如何呈现bar标记,因此它显示为空,只显示文本foo

如果您转到view-source或将文件作为text/plain发送,则会显示所有文字。

如果要在HTML文档中呈现字符串foo<bar,可以执行echo htmlspecialchars($str),这会将字符串打印为foo&lt;bar。此转义 <字符,因此不会将其解释为HTML。

答案 1 :(得分:2)

检查结果页面的源代码视图,输出无效,因此不可见。

正确的字符串是'foo&lt;bar'

答案 2 :(得分:1)

可能您的浏览器正在删除它,因为它看起来像一个糟糕的HTML标签。

按Ctrl + U(参见源代码)并查看它..

答案 3 :(得分:1)

使用此

htmlspecialchars ("foo<bar");