首页 > php教程 > php手册 > php中单引号与双引号区别详细

php中单引号与双引号区别详细

WBOY
发布: 2016-05-25 16:46:08
原创
1318 人浏览过

关于php中单引号与双引号区别有那些很,至于大家都说的下面我用我的理解来说说关于单引号与双引号的区别所在吧,单引号在其中间的变量是不被执行的,把变量当成了一个普通的字符串,而双引号php会去解析中间有变量没有,有的话解析变量,这样双引号在一些方法更费服务器资源.

单引号和双引号大体相同,但有一点非常重要,就是变量引用问题,你把下面代码运行即可明白了,代码如下:

<?php
$x = "中国";
echo "我是$x人"; //双引号
echo "<br />";
echo &#39;我是$x人&#39;; //单引号
?>
登录后复制

变量用双引号括起来,单引号中的则不是(即单引号中的变量符号不解析),单引号内部的变量不会执行,双引号会执行,代码如下:

$name = 'hello';echo "the $name";,会输出 the hello,而如果是单引号,代码如下:

$name = 'hello';echo 'the $name';会输出 the $name,主要区别就是这个,在字符串中引用复杂的变量组合时,可能会产生一些问题,下面的代码会正常工作:

echo "value = $foo"; echo "value = $a[$i]";

而下面的代码却不能得到我们希望的结果:

echo "value = $a[$i][$j]"; //我们希望打印二维数组$a的某个元素.

为避免这些字串使用中的潜在问题,我们通常把复杂的变量从字串中分离开来,就像这样:

echo 'value = ' . $a[$i][$j];

还有一种办法是将复杂变量用花括号括起来,语法分析器就能正确辨认了:

echo "value = {$a[$i][$j]}" //打印二维数组$a的某个元素

这样,又出现新问题了,当我们想在字串中引用花括号字符本身时,就要记得使用转义符了:

$var = 3;  
echo "value = {$var}"; // 打印结果 "value = 3"  
echo "value = {$var}"; // 打印结果 "value = {3}"
登录后复制

看个实例,代码如下:

<?php
$var1 = "chris mao"; //assign the value "chirs mao" to $var1
$var2 = & $var1; //reference $var1 via $var2
echo &#39;<b>the value of $var2 is: </b>&#39;, $var2, "<br>"; //$var2 and $var1 have the same value "chris mao"
$var2 = &#39;my name is $var2&#39;; //modify $var2, the sametime $var1 was modified
echo &#39;<b>the value of $var1 is: </b>&#39;, $var1, "<br>"; //the value of $var1 is "my name is $var2"
$var2 = "my new name is $var1"; //modify $var2, the sametime $var1 was modified
echo &#39;<b>the value of $var2 is: </b>&#39;, $var2, "<br>"; //the value of $var1 is "my new name is my name is $var2"
echo &#39;<b>the value of $var1 is: </b>&#39;, $var1, "<br>"; //the value of $var1 is "my new name is my name is $var2"
?>
登录后复制


教程链接:

随意转载~但请保留教程地址★

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门推荐
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板