牛骨文教育服务平台(让学习变的简单)
博文笔记

php学习笔记 -- 关于连接符与单双引号

创建时间:2017-01-28 投稿人: 浏览次数:773

php连接符中逗号与点号的区别

点号是将字符串拼接后再输出
逗号是将字符串依次输出
逗号省去了拼接步骤,所以使用逗号性能更好

echo "1+5=" . 1+5;  //输出6
echo "1+5=" . 5+1;  //输出2

不同结果的原因:先"1+5="与1拼接得到"1+5=1",再把"1+5=1"这个字符串自动转化成int类型得到1,然后再与后面的int数字相加。


php中单引号和双引号的区别

1.转义字符不同
单引号只能转义:"和
双引号能转义:"      
2.对变量的解析不同
单引号不能解析变量
双引号能解析变量

<?php
$var = "abc";
echo "$var"."<br/>"; //输出结果$var
echo "$var"."<br/>"; //输出结果abc
?> 

heredoc与nowdoc的主要区别也是对变量的解析不同

$var = "abc";
$heredoc = <<<EOF
$var//输出结果abc
EOF;
echo $heredoc

$nowdoc = <<<"EOF"
$var//输出结果$var
EOF;
echo $nowdoc

3.解析速度不同
单引号不需要考虑变量的解析,速度比双引号快.推荐用单引号.有的时候双引号也比较好用,比如在拼凑sql 语句




heredoc

1.以<<<End开始标记开始,以End结束标记结束,结束标记必须顶头写,不能有缩进和空格,且在结束标记末尾要有分号 。开始标记和开始标记相同,比如常用大写的EOT、EOD、EOF来表示,但是不只限于那几个,只要保证开始标记和结束标记不在正文中出现即可。


2.位于开始标记和结束标记之间的变量可以被正常解析,但是函数则不可以。因此在heredoc中,变量不需要用连接符.或,来拼接。


3.heredoc常用在输出包含大量HTML语法d文档的时候。比如:函数outputhtml()要输出HTML的主页。可以有两种写法。很明显第二种写法比较简单和易于阅读。

function outputhtml(){
echo "<html>";
echo "<head><title>主页</title></head>";
echo "<body>主页内容</body>";
echo "</html>;
}
function outputhtml()
{
$heredoc<<<EOT
   <html>
   <head><title>主页</title></head>
   <body>主页内容</body>
   </html>
EOT;
echo $heredoc;
}
outputhtml();


声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。