【1】单引号和双引号在处理变量的时候做法:
括在双引号内的变量会解释出值,但是括在单引号内则不做处理,直接输出;
<?php$var = 'my name is huige';echo "$var";//结果是:my name is huigeecho '$var';//结果是:$var?>
【2】如果在语句中要转义操作,那么就一定要用双引号了。
比如,转定义单引号时,写成这样的话:
$a = ‘He/’s name is Huige.’ ;
程序会把He/’s name is Tom.原封不动的显示出来,如果这样写:
$a = “He/’s name is Huige.”;
程序就会显示:He’s name is Tom.
====================================================
下面列举写转义字符的含义(当在双引号内使用这些字符时,它们具有特殊的含义)
转义字符的代码 | 转义字符的含义 |
/" | 双引号 |
/' | 单引号 |
// | 反斜杠 |
/n | 换行符 |
/r | 回车符 |
/t | 制表符 |
/$ | 美元符号 |
====================================================
下面在来一个例子来演示了使用单引号和双引号之间的区别:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>引号</title></head><body><?php// 设置必要要的变量: $quantity = 30; // 出售30件产品.$PRice = 119.95; // 单价.$taxrate = .05; // 5%的发票税.// 计算总额: $total = $quantity * $price;$total = $total + ($total * $taxrate); // Calculate and add the tax.// 格式化总额: $total = number_format ($total, 2);// 打印结果使用双引号:echo "<h3>使用双引号:</h3>";echo "<p>你所出售的 <b>$quantity</b> 件产品,成本单价为 <b>/$$price</b>. 加上发票税,总额为 <b>/$$total</b>.</p>/n";// 打印结果使用单引号:echo '<h3>使用单引号:</h3>';echo '<p>你所出售的 <b>$quantity</b> 件产品,成本单价为 <b>/$$price</b>. 加上发票税,总额为 <b>/$$total</b>.</p>/n';?></body></html>
最后结果如下图:
================================================================
================================================================
1、这个例子中用双引号打印结果,是这篇文章(php入门变量之数字)中一个例子的单引号打印结果的另一个解决方法。
2、在这个例子中由于双引号是能打印出变量的,所以我们把要打印的东西全部放到双引号中,但是唯一的问题就是打印$符号问题了,要打印出$符号,我们直接进行转义即可。
3、同时在这两种引号内使用换行符(/n )会有什么区别呢???
答:当把换行符(/n )置于双引号内时,它会在HTML 源代码中创建一个新行。当把它置于单引号内时,它会直接打印出/和n。
================================================================
FAQ:
1、在运行效率上单引号和双引号也是有区别的,一般来说单引号的运行速度会比较快,双引号会比较慢,原因在于双引号要先查找语句中是否有变量,而单引号则不用,因此,如果语句中没有代入变量尽量采用单引号。这是写程序一种习惯,时刻想着提高程序的效率。
2、当利用PHP 打印HTML 时,使用单引号最容易。
echo '<table width="80% " border="0" cellspacing="2" cellpadding="3" align="center">';
如果想使用双引号打印出这段HTML 代码,将不得不对字符串中的所有双引号进行转义。
echo "<table width=/"80%/" border= /"0/" cellspacing=/"2/" cellpadding=/"3/" align=/" center/">";
3、如果你仍然不清楚这两种引号之间的区别,可以使用双引号,这样不太可能出问题。
新闻热点
疑难解答