当前位置:Gxlcms > PHP教程 > php字符串中的双引号与单引号差异

php字符串中的双引号与单引号差异

时间:2021-07-01 10:21:17 帮助过:16人阅读

php字符串中的双引号与单引号区别
 ';
// $str2 = "hello,"jack" "; // 这个字符串,是一个新闻标题,标题里很容易又出现双引号.
/**
思考:
用双引号,来声明字符串的时候,
内部不能再出现双引号,
因为,双引号被当成字符串的"边界"来对待,
因此,内部出现双引号,就引起了解释上的歧义.
这时,可以用转义字符,
即,用\" 转义 来表示 "
还有没有其他的转义字符呢?
想: \", 被用来当成 " 理解了.
那我要是确实想表示 反斜线\, 又怎么办呢?,
答: 用\\, 表示 反斜线\
还有没有其他的转义字符呢?
答:有
\n, \r, \$,等
\n 转义成 换行符
\r 转义成 回车符
**/
$str2 = "hello ,\"jack\",
"; echo $str2; $str3 = "hello \\"; echo $str3,'
'; $str4 = "hello\n\r\n\r\n\rworld"; echo $str4,'
'; $str5 = "hello $str3"; echo $str5,'
'; // hello hello \, 即把$str3当变量给解析出来 $str6 = "world \$str3"; //此处 \$被转成了普通字符串$,而不再理解为变量标志. echo $str6; ?> '; // $str2 = 'hello 'jack''; // 某字符串是新闻标题,标题又出现单引号, // 单引号里又出现的单引号怎么办呢? // '被用来做字符串的边界了, // 因此,串内想出现',只好用转义来表示 $str2 = 'hello \'jack\''; echo $str2,'
'; // \被用来转义单引号用了,那么如果我确实想表示\,怎么办呢. // \\ 来 表示 \ $str3 = 'hello \\'; echo $str3; ?> ',$str2; /* 转义上的区别: 单引号,系统不做复杂的转义, 只转义\',\\, 其他的---一律原样
输出. 双引号,则转义的比较多,\",\\,\r,\n,\t,\$等. 对于变量解释的区别: 单引号,不对字符串的$作变量名解析, 而双引号,会试着$理解成变量名,来解析. */ // 2:单双引号定义字符串,哪个速度更快一些? // 答:单引号解析的更快,因为不需要进行过多的转义和变量解析 // 问:什么时间选用单/双引号呢? /* 答:大段文本,比如新闻标题,文本内容,自我介绍等这样大段话, 用',解析快. 但有时候,确实需要在一段字符串夹杂变量, 比如拼凑sql语句时 $id = 5; $sql = "select * from user where id = $id"; // 如果此时用单引,则语句成为了 ..id= $id,sql就出错了. // 此时,用双引合适. 解析$id,语句解析成 ..id = 5; */ ?>

人气教程排行