php中,为什么echo "\abc";会输出\abc? 为什么echo "\2bc";会输出bc?

 我来答
莫路草根
2016-08-13 · TA获得超过4102个赞
知道大有可为答主
回答量:4184
采纳率:85%
帮助的人:1045万
展开全部

之前就和你说过,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?

自己多找找例子吧,网上有很多资料的,我就不多说了。

来自:求助得到的回答
任安秋梵4k
2016-08-13 · 超过10用户采纳过TA的回答
知道答主
回答量:42
采纳率:0%
帮助的人:11.1万
展开全部
应为 \ 对php来说是一个特殊字符
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式