我正在使用字符串,不知何故,如果有"<"那么php就会决定忽略以下字符串。内。我无法找到任何相关信息。看这个例子:
$str = 'foo<bar'
// echoes foo, foo<bar expected
有没有我不了解的字符串运算符?包裹在里面的字符串&#39; &#39;不应该用php评估,对吧?
答案 0 :(得分:2)
您的浏览器可能将其解释为HTML,并将<bar
视为部分HTML标记。由于它不知道如何呈现bar
标记,因此它显示为空,只显示文本foo
。
如果您转到view-source
或将文件作为text/plain
发送,则会显示所有文字。
如果要在HTML文档中呈现字符串foo<bar
,可以执行echo htmlspecialchars($str)
,这会将字符串打印为foo<bar
。此转义 <
字符,因此不会将其解释为HTML。
答案 1 :(得分:2)
检查结果页面的源代码视图,输出无效,因此不可见。
正确的字符串是'foo<bar'
答案 2 :(得分:1)
可能您的浏览器正在删除它,因为它看起来像一个糟糕的HTML标签。
按Ctrl + U(参见源代码)并查看它..
答案 3 :(得分:1)
使用此
htmlspecialchars ("foo<bar");