首页 行业资讯 宠物日常 宠物养护 宠物健康 宠物故事

php 单双引号与转义的问题

发布网友

我来回答

4个回答

热心网友

在单引号串中反斜线失去了它的扩展含义(除了添入反斜杠\\和添入单引号\')。所以,当你想在字串中进行变量代换和包含\n(换行符)等转义序列时,你应该使用双引号。

所以单引号不会转义,\\只是添加了一个\,这个类似\' 添加了一个单引号。追问也就是说 在单引号中 反斜杠的转义只针对 \\ 和 \' 是这样么?

追答恩,是这样的,其他情况,必须要双引号才能转义。

热心网友

预定义字符是: 
句号 (.) 
反斜杠 (\) 
加号 (+) 
星号 (*) 
问号 (?) 
方括号 ([]) 
脱字符号 (^) 
美元符号 ($) 
圆括号 (()) 

echo 'a\\nb';   //进行了转义 所有输出 a\nb

echo 'a\nb';    //双引号可以解析转义字符,单引号不可以解析转义字符

望采纳 Thx

追问你的解释已经说的很清楚了 单引号不可以解析转义字符
但是为什么第一个 2个反双斜杠 被解析成了1个反双斜杠

追答* 以单引号为定界符的php字符串,支持两个转义\'和\\
* 以双引号为定界符的php字符串,支持下列转义:
\n 换行
\r 回车
\t 水平制表符
\\ 反斜线
\$ 美元符号
\" 双引号

热心网友

单引号不解析变量
双引号解析变量
单引号中双引号不解析变量
双引号中单引号解析变量
或者用连接符拼接字符串
打字不易,如满意,望采纳。追问请直接回答问题,你说半天变量 我问题中有一个涉及变量的问题么?

热心网友

...因为你的输出 你是通过浏览器看的。浏览器不能识别\n为换行的 所以你看到\n追问你搞笑么

追答你就说你笑没笑
单引号: 要表达一个单引号自身,需在它的前面加个反斜线(\)来转义。要表达一个反斜线自身,则用两个反斜线(\\)。其它任何方式的反斜线都会被当成反斜线本身:也就是说如果想使用其它转义序列例如 \r 或者 \n,并不代表任何特殊含义,就单纯是这两个字符本身。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com