php中,为什么echo "\abc";会输出\abc? 为什么echo "\2bc";会输出bc?
2个回答
展开全部
之前就和你说过,php里面的双引号会解析里面的有特殊含义的字符,在这里,\(反斜线)是一个特殊的字符,所以会转义。
有一种编码叫做 ASC II编码,具体是干什么用的,或者有什么历史你另外去了解,我不多说了。
在php里面,十六进制和八进制是不需要使用内置函数就可以直接解析成ASC II码的:
echo "\x41"; //十六进制,以\x开头
echo "\101"; //八进制,以\数字开头
其他的进制如二进制,十进制就需要另外的函数解析。
如果ASC II码里面没有这个字符,就会输出空,也就是什么都没有。
具体的ASC II码你可以参考下面的图片:
Dec: 十进制,Oct:八进制,Hex:十六进制,html:网页编码,Char:表示的字符
例如,你给的反斜线2(\2)在表里面是没有的,所以直接输出空。
例如,echo "\101" 结果为A,对应Oct中的101中的Char是不是A?
自己多找找例子吧,网上有很多资料的,我就不多说了。
来自:求助得到的回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询