【www.gdgbn.com--python】

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

 代码如下

$x="中国";

echo "我是$x人";//双引号

echo "
";

echo "我是$x人";//单引号

?>


变量用双引号括起来,单引号中的则不是(即单引号中的变量符号不解析)


单引号内部的变量不会执行

  双引号会执行

  如

 代码如下

  $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}"


看个实例

 代码如下

$var1 = "chris mao";    //assign the value "chirs mao" to $var1
$var2 = &$var1;            //reference $var1 via $var2
echo "the value of $var2 is: ", $var2, "
";  //$var2 and $var1 have the same value "chris mao"
$var2 = "my name is $var2";  //modify $var2, the sametime $var1 was modified
echo "the value of $var1 is: ", $var1, "
";  //the value of $var1 is "my name is $var2"
$var2 = "my new name is $var1";  //modify $var2, the sametime $var1 was modified
echo "the value of $var2 is: ", $var2, "
";  //the value of $var1 is "my new name is my name is $var2"
echo "the value of $var1 is: ", $var1, "
";  //the value of $var1 is "my new name is my name is $var2"

本文来源:http://www.gdgbn.com/jiaocheng/27549/