今天学习了php对字符串的处理规则,使用单引号和双引号的区别,以及在单引号和双引号中各种特殊字符的输出,还有两种声明字符串的方法heredoc和nowdoc,以下是对应的代码与大家分享:
代码:
实例
<meta charset="utf-8"> <?php header("Content-type:text/html;charset=utf-8"); //创建变量 $attact = '攻打'; $title1 = '滴滴$attact美团外卖'; $title2 = "滴滴{$attact}美团外卖"; $title3 = "滴滴{\$attact}美团外卖"; echo $title1; echo '<br>'; echo $title2; echo '<br>'; echo $title3; echo '<hr>'; echo '莎士比亚说:\'To be or not to be,that\'s the question\''; echo '<br>'; echo "莎士比亚说:\"To be or not to be,that's the question\""; echo '<hr>'; echo '你今天吃饭了吗? \n 没有'; echo '<br>'; echo "你今天吃饭了吗? \n 没有"; echo '<br>'; echo nl2br("你今天吃饭了吗? \n 没有"); echo '<hr>'; $heredoc = <<< HEREDOC {$title2}可能是今年最惨烈的营销大战\n 那可是一个大新闻~~ HEREDOC; echo $heredoc; echo '<br>'; echo '<br>'; echo nl2br($heredoc); echo '<hr>'; $nowdoc = <<< 'NOWDOC' <h3>$title2</h3> \r\n '那可是一个大新闻~~' NOWDOC; echo $nowdoc;
运行实例 »
点击 "运行实例" 按钮查看在线实例
总结:
单引号会将原样输出,双引号会将内容解析输出;
若要在字符串输出定界符,那么需要使用转义字符:反斜线\,将原字符进行转义,使其失去原有的作用然后再进行输出;
若要输出转义字符自身,则连写两个转义字符即可;
若要输出\n等特殊字符,需要使用函数nl2br($string)将字符串中的特殊字符进行处理;
若不想变量被解析,则对$进行转义: \$,就是会原样输出了,不会再解析;
另外还有两种特殊申明字符串的方法heredoc和nowdoc,heredoc结构功能与双引号创建的字符串基本一致,并且可以直接使用双引号,而不需要转义,nowdoc结构功能与单引号创建的字符串基本一致,可以直接使用单引号,不需要转义。