奇怪的特殊符号造成PHP代码执行失败

昨天不知道从哪里偷了一段代码,然后一直执行不过,一直报语法错误。

经过一个个的排查,发现是因为没行末尾都有两个字符,用ord转换后而已发现他们的原型:

echo ord( ‘ ‘ );//32
echo ord( ‘ ‘ );//194

是空格跟特殊控制符。具体看《ASCII》。

空格符明显是不能造成问题的,直接排除,然后将194这个符号增加到随便一行代码,比如加上前面ord代码上吧:

echo ord( ‘ ‘ ); //32

注意,这次//32前面有一个符号噢。然后执行就报错了,错误如下:

syntax error, unexpected ‘echo’ (T_ECHO)

嗯,问题重现,就是他造成的。

发表评论