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

php教程中单引号与双引号的区别

引号中,任何变量($var)、特殊转义字符(如“t r n”等)不会被解析,因此php的解析速度更快,转义字符仅仅支持“’”和“”这样对单引号和反斜杠本身的转义;

在字串中使用变量

  这个功能让你无须使用连接符号来粘和大量的简单字符串。php允许我们在双引号串中直接包含字
串变量,我们可以发现下面的两个字串的处理结果是相同的。

$full_name = $first_name . ' ' . $last_name;
$full_name = "$first_name $last_name";

  单引号串和双引号串在php中的处理是不相同的。双引号串中的内容可以被解释而且替换,而单引
号串中的内容总被认为是普通字符。例如:

 在字符串中引用复杂的变量组合时,可能会产生一些问题,下面的代码会正常工作:

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

$foo = 2;
echo "foo is $foo"; // 打印结果: foo is 2
echo 'foo is $foo'; // 打印结果: foo is $foo
echo "foo is $foon"; // 打印结果: foo is 2 (同时换行)
echo 'foo is $foon'; // 打印结果: foo is $foon

 

双引号中,变量($var)值会代入字符串中,特殊转义字符也会被解析成特定的单个字符,还有一些专门针对上述两项特性的特殊功能性转义,例如“$”和“{$array[‘key’]}。这样虽然程序编写更加方便,但同时php的解析也很慢;

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


$name = 'hello';
echo "the $name";

会输出 the hello

而如果是单引号

$name = 'hello';
echo 'the $name';

会输出 the $name

主要区别就是这个,其他的无所谓,看你自己喜欢了
推荐是保持一致,如用单引号其他地方保持一致就可以了,双亦然

 

时间: 2024-10-29 04:48:57

php中单引号与双引号的区别的相关文章

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

如果字符串包含在双引号中,php将对字符串中的一些特殊字符进行解析. 例1: <?php $i=80; $a="hello$i"; $b='hello$i'; echo '<br />$a='.$a; //输出$a=hello80,双引号输出变量的值 echo '<br />$b='.$b; //输出$b=hello$i,单引号输出变量的名称 ?> 例2: <?php $a="hello\""; $b='hello

c语言中单引号和双引号的区别(顺利解决从字符串中提取IP地址的困惑)

c语言中的单引号和双引号可是有很大区别的,使用之前一定要了解他们之间到底有什么不同,下面小编就给大家详细的介绍一下吧,对此还不是很了解的朋友可以过来参考下   问题:从c++文件中将std:string转换为char*后,返回包含IP地址的char*,需要将该字符串char*中的IP地址提取出来: 解决办法:1. 解决思路:IP地址最长为12字符+3句点=15字符,一般性表示为192.168.111.111: 可以从第一个字符开始解析,当不是'.'时,将所有字符保存下来,然后把所有保存下来的字符

PHP中单引号与双引号的区别分析_php技巧

①转义的字符不同 单引号和双引号中都可以使用转义字符(\),但只能转义在单引号中引起来的单引号和转义转义符本身.如果用双引号("")括起字符串,PHP懂得更多特殊字符串的转义序列. <?php $str1 = '\',\\,\r\n\t\v\$\"'; echo $str1,'<br />'; $str2 = "\",\\,a\r\n\tb\v\$\'"; echo $str2,'<br />'; ?> ②对变

Shell脚本中单引号(‘)和双引号(“)的使用区别_linux shell

在Linux操作系统上编写Shell脚本时候,我们是在变量的前面使用$符号来获取该变量的值,通常在脚本中使用"$param"这种带双引号的格式,但也有出现使用'$param'这种带引号的使用的场景,首先大家看一段例子: 复制代码 代码如下: [root@linux ~]# name=TekTea [root@linux ~]# echo $name TekTea [root@linux ~]# sayhello="Hello $name" [root@linux ~

Unix Shell中单引号、双引号字符、反斜杠、反引号的使用[转]

在执行shell脚本的时候,shell将会对脚本中的行进行解释,然后执行:对于一些特殊处理的句子,我们可以使用引号或者反斜线来避免shell解释执行之.如下,当在命令行中输入:echo *child.sh env_variable father.sh param.sh profile.sh 125017.sh默认会将当前文件夹下的所有文件都打印出来,但我们需要的是输出一个"*".可以以这样的方式让shell不去解释星号(*):echo "*"* 下面是shell引用

浅谈PHP中单引号和双引号到底有啥区别呢?_php技巧

在PHP中,字符串的定义可以使用英文单引号' ',也可以使用英文双引号" ". 但是必须使用同一种单或双引号来定义字符串,如:'Hello World"和"Hello World'为非法的字符串定义. 单引号和双引号到底有啥区别呢? PHP允许我们在双引号串中直接包含字串变量. 而单引号串中的内容总被认为是普通字符,因此单引号中的内容不会被转义效率更高. 比如: 复制代码 代码如下: $str='hello'; echo "str is $str"

简单概括PHP的字符串中单引号与双引号的区别_php技巧

今天有个朋友问起,说下区别,顺便复习下. 单引号与双引号的不同: " "双引号里面的字段会经过编译器解释,然后再当作HTML代码输出. ' '单引号里面的不进行解释,直接输出.  单引号解析的时间比双引号快 . 单引号支持\转义符,双引号支持的转义符更多 . $hello= 3; echo "hello is $hello"; // 打印结果:hello is 3 echo 'hello is $hello'; // 打印结果: hello is $hello ec

linux shell中单引号、双引号、反引号、反斜杠的区别_linux shell

1. 单引号 ( '' ) # grep Susan phonebook Susan Goldberg 403-212-4921 Susan Topple 212-234-2343 如果我们想查找的是Susan Goldberg,不能直接使用grep Susan Goldberg phonebook命令,grep会把Goldberg和phonebook当作需要搜索的文件 # grep 'Susan Gold' phonebook Susan Goldberg 403-212-4921 当shel

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

单引号和双引号大体相同,但有一点非常重要,,就是变量引用问题 ,你把下面代码运行即可明白了  代码如下 复制代码 <?php $x="中国"; echo "我是$x人";//双引号 echo "<br />"; echo '我是$x人';//单引号 ?> 变量用双引号括起来,单引号中的则不是(即单引号中的变量符号不解析) 单引号内部的变量不会执行 双引号会执行 如  代码如下 复制代码 $name = 'hello'; e