PHP用“<”更改字符串烧焦

时间:2013-05-03 19:34:47

标签: php codeigniter

我对此感到疯狂......我只是简单地写了这样的东西:

$pass = "axX/dss(z\<zbE";
die($pass);

和PHP返回:

axX/dss(z\

我把每个字符串放在&#34;&lt;&#34; char出现相同,字符串是&#34;短路&#34;通过&#34;&lt;&#34;字符。

请帮助......

感谢。

哦,我正在使用CodeIgniter。


这变得怪异......

现在我的代码是这样的:

$pass = "dsJ<32.\wwe^";
echo $pass;
echo '<br>';
$pass = "cz\vU(rV<zbE";
echo $pass;

我的回报是:

dsJ<32.\wwe^
czU(rV

第一个字符串使用de&#34;&lt;&#34; char,它没问题......但第二个......

2 个答案:

答案 0 :(得分:4)

字符串根本没有改变。见这里:http://3v4l.org/b3RaQ

正在发生的事情是您的浏览器隐藏了<字符,它看起来像HTML。

如果要在浏览器中正确显示字符串,请在排除故障时使用htmlentites()<pre>标记进行包装。

更新:我还复制/粘贴了您的新代码,您可以在此处看到:http://3v4l.org/Uq9HY。它仍然有效。也许您可以在http://3v4l.org/设置一个可以重现问题的测试用例?

答案 1 :(得分:0)

使用&lt;转义它。 <是html中的常用符号(在php中,通过扩展名)