php中單引號和雙引號有哪些區別

2020-07-16 10:06:24

php中單引號和雙引號的區別是:1、跳脫的字元不同;2、對變數的解析不同;3、解析速度不同。php不會解析單引號中的變數,而是將變數名原樣輸出;php可以解析雙引號中包含的變數。

1、跳脫的字元不同

單引號和雙引號中都可以使用跳脫字元(\),但只能跳脫在單引號中引起來的單引號和跳脫符本身。如果用雙引號(「」)括起字串,PHP懂得更多特殊字串的跳脫序列。

<?php
$str1 = '\',\\,\r\n\t\v\$\"';
echo $str1,'<br />';  
$str2 = "\",\\,a\r\n\tb\v\$\'";
echo $str2,'<br />';
?>

2、對變數的解析不同

單引號字串中出現的變數不會被變數值替代,即PHP不會解析單引號中的變數,而是將變數名原樣輸出。雙引號字串最重要的一點是其中的變數名會被變數值替代,即可以解析雙引號中包含的變數。

<?php
$age = 20;
$str1 = 'I am $age years old';
$str2 = "I am $age years old";
echo $str1,'<br />'; // I am $age years old 
echo $str2,'<br />'; // I am 20 years old;
?>

3、解析速度不同

單引號不需要考慮變數的解析,因此,速度比雙引號快。但是有的時候雙引號也比較好用,比如在拼湊sql 語句時。

//使用單引號
echo ' this \n is \r the blog \t of \\ zhoumanhe \\'; 
//上面使用單引號輸出的值是 this \n is \r the blog \t of \ zhoumanhe \  
echo '';
echo "";  
//使用雙引號
echo "this \n is \r the blog \t of \\ zhoumanhe \\"; 
//上面使用雙引號輸出的值是 this is the blog of \ zhoumanhe \

如果您想了解更多相關知識,請存取TW511.COM

以上就是php中單引號和雙引號有哪些區別的詳細內容,更多請關注TW511.COM其它相關文章!