藉探屋巍驶九隋缚缔雹木镭募
定界符:单引号,双引号
1.单引号原样输出
2.双引号解析变量输出,最好用花括号{}添加一个变量定界符
新建demo5.php
代码:
<?php $money="95亿美元"; $title1='阿里$money收购了饿了么'; $title2="阿里$money收购了饿了么"; echo $title1; echo $title2;
执行:
提示错误,错误原因:
php解释器将 money收购了饿了么 当做了变量进行了解析
修正方法,添加定界符{}
<?php $money="95亿美元"; $title1='阿里$money收购了饿了么'.'<br>'; //$title2="阿里$money收购了饿了么"; $title3="阿里{$money}收购了饿了么"; echo $title1; //echo $title2; echo $title3;
显示:
转义
<?php echo 'xxx说:\'你无耻的样子很有我当年的神韵\''; echo "<hr>"; //如果需要字符转义,需要里外一致 echo "xxx说:\'你无耻的样子很有我当年的神韵\'"; echo "<hr>"; echo "xxx说:\"你无耻的样子很有我当年的神韵\"";
执行:
转义特殊字符:
1.单引号不会解析特殊字符
2.双引号可以解析特殊字符(输出换行符\n)
<?php //双引号可以解析特殊字符 echo "明天会下雨吗? \n 不会的";
执行:
好像并没有换行,这是因为\n在页面中被解析为空格,在源码中被解析为换行:
可以使用nl2br()函数将两者统一:
<?php //双引号可以解析特殊字符 echo nl2br("明天会下雨吗? \n 不会的");
执行:
不希望解析变量,可以使用 \ 转义
<?php $money="95亿美元"; $title1="阿里{$money}收购了饿了么"; $title2="阿里{\$money}收购了饿了么"; echo $title1; echo "<hr>"; echo $title2;
执行:
heredoc结构
功能:与双引号创建的字符串基本一致
1.可以将内部的变量和特殊字符进行自动转义(不需要转义字符)
2.可以直接使用双引号,而不需要转义
<?php $siteName="萌面人资料铺"; $heredoc=<<<adb {$siteName}是专业的"大学资料"分享平台\n域名:www.xuexianswer.com adb; echo $heredoc;
执行:
heredoc里面将\n 解析成了空格 可以echo nl2br($heredoc); 解析成换行。
注意:
heredoc必须符合下图规范:
heredoc对应着双引号,代码还可以写作:
<?php $siteName="萌面人资料铺"; $heredoc=<<<"adb" {$siteName}是专业的"大学资料"分享平台\n域名:www.xuexianswer.com adb; echo $heredoc;
执行:
nowdoc
功能:与单引号创建的字符串基本一致
1. 将内容原样输出,不解析变量和特殊字符
2. 可以直接使用单引号,不需要转义
<?php $siteName="萌面人资料铺"; $nowdoc=<<<'aaa' {$siteName} \n \r 'www.xuexianswer.com' aaa; echo $nowdoc;
执行:
注意nowdoc里面的aaa要加单引号
庇草快判汞列此媒刃哆沪扒填