php入门单引号与双引号区别

时间:2021-01-03 03:57:44

【1】单引号和双引号在处理变量的时候做法:

括在双引号内的变量会解释出值,但是括在单引号内则不做处理,直接输出;

<?php
$var = 'my name is huige'; echo "$var"; //结果是:my name is huige echo '$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>

最后结果如下图:

================================================================

php入门单引号与双引号区别

================================================================

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、如果你仍然不清楚这两种引号之间的区别,可以使用双引号,这样不太可能出问题。