现在,我使用PHP时遇到了一个奇怪的行为:htmlentities
在调用时似乎不起作用;因此,当我做的:只有当被调用两次时,htmlentities才能在浏览器上工作
echo htmlentities("<iframe>");
浏览器输出字符串参数转义状态,即<iframe>
。
然而,当我调用该函数的两倍,它的工作原理:
echo htmlentities(htmlentities("<iframe>"));
给我:&lt;iframe&gt;
我注意到怪异的行为from this answer当用户表达了同样的困惑。
现在我有两个问题使用这个“答案有效”:首先,我知道这是一个奇怪的行为,并不能保证这种奇怪将被复制(我希望它不是!)当我的代码导出到另一台服务器。其次,为什么这种行为在第一位?
所以我的问题:我很想知道这种行为的起源以及如何处理它。
这是一个耻辱很多你将无法验证我的问题,因为我在我的本地主机上工作,并且htmlentities
在其他服务器上正常工作。
这不仅仅适用于PHP 7,我在5.6.23上得到了和你一样的结果,所以这个结果必须更进一步。 –
查看源代码,你会看到你正在得到正确的结果。 – PHPglue
“浏览器输出未转义的字符串参数,即