为了账号安全,请及时绑定邮箱和手机立即绑定

使用转义符“\”有点不好理解啊有大神讲一下为什么这样写吗

我的理解是$str_string=”我说:\"我是这样写的”\“;

或者$str_string=”我说:“\我是这样写的\”“;

然而实际上$str_string=“事实说:\"事实上是这样写的\"";

难道是读取的问题吗是因为计算机要这样\"这样读取的问题吗  对称性强迫症受不了

以上只是猜测希望有大神稍微解释下  本人小白一只谢谢了

正在回答

3 回答

\a    响铃(BEL)    007    

\b    退格(BS)    008    

\f    换页(FF)    012    

\n    换行(LF)    010    

\r    回车(CR)    013    

\t    水平制表(HT)    009    

\v    垂直制表(VT)    011    

\\    反斜线    092    

​    ​    ​    

\'    单引号字符    039    

\"    双引号字符    034    

\0    空字符(NULL)    000    

\ddd    任意字符    三位八进制    

\xhh    任意字符    二位十六进制    

这种转义字符是在计算机内部定义好的,如果你想要是先转义的话就得将你要转义的字符放在反徐线的后面,希望对你有帮助

3 回复 有任何疑惑可以回复我~

转义字符是程序中有些字符本身有一定意思的,比如单引号或双引号,他们在程序中本身的意思是用来表达字符类型的数据,如:'php',"我想学PHP",如果要在字符中需要显示字符单引号或双引号,很容易被PHP的解释器理解成用来包裹字符定义字符串的,如:"我想学"PHP",会被分成两部分 ("我想学")和(PHP"),前面的没有问题,后面的PHP解释器就无法解释了,这个时候我们需要将中间的双引号的功能去掉,让它仅能表达的是个字符,而不是定义字符串这样的功能,这个去掉其原始功能的行为,我理解成转义,那么正确的表达方式是"我想学\"PHP"


转义还有第二种函义,从某种意义上可能还是属于上面的一种。计算机中定义的字符有很多个(ASSCI码中字符,128个),其中有些字符是看不到的,比如换行,制表符号(tab键产生的字符,一般有4个或8个空格那么长),而我们的键盘上键实在太少了,想要表达那么多字符现有的键盘肯定达不到,这就需要有字符与字符之间相互组合,这种组合不能随便的任字母组合,需要避开常用的组合,如(ab,abc,bcd),因为那些是日常经常会碰到的。PHP中选择了斜扛+字符(\ABC)的方式,这种方式也是转义。

所以才有了上述的转义字符

\b    退格(BS)    008    

\f    换页(FF)    012    

\n    换行(LF)    010    

\r    回车(CR)    013    

\t    水平制表(HT)    009    

\v    垂直制表(VT)    011    

\\    反斜线    092    

​    ​    ​    

\'    单引号字符    039    

\"    双引号字符    034    

\0    空字符(NULL)    000    

\ddd    任意字符    三位八进制    

\xhh    任意字符    二位十六进制    


0 回复 有任何疑惑可以回复我~

果然是这样吗总之谢谢了 虽然很不习惯但是我会克服这个肯爹的设定的

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

使用转义符“\”有点不好理解啊有大神讲一下为什么这样写吗

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信