PHP中單引號與雙引號的區(qū)別分析
①轉(zhuǎn)義的字符不同
單引號和雙引號中都可以使用轉(zhuǎn)義字符(\),但只能轉(zhuǎn)義在單引號中引起來的單引號和轉(zhuǎn)義轉(zhuǎn)義符本身。如果用雙引號(“”)括起字符串,PHP懂得更多特殊字符串的轉(zhuǎn)義序列。
<?php $str1 = '\',\\,\r\n\t\v\$\"'; echo $str1,'<br />'; $str2 = "\",\\,a\r\n\tb\v\$\'"; echo $str2,'<br />'; ?>
②對變量的解析不同
單引號字符串中出現(xiàn)的變量不會被變量值替代。即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; ?>
③解析速度不同
單引號不需要考慮變量的解析,速度比雙引號快.推薦用單引號.有的時候雙引號也比較好用,比如在拼湊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 \
使用sql
假設(shè)查詢條件中使用的是常量,例如:
select * from abc_table where user_name='abc';
SQL語句可以寫成:
SQLstr = “select * from abc_table where user _name= ‘a(chǎn)bc'” ;
假設(shè)查詢條件中使用的是變量,例如:
$user_name = $_REQUEST['user_name']; //字符串變量
或
$user=array (”name”=> $_REQUEST['user_name‘,"age"=>$_REQUEST['age'];//數(shù)組變量
SQL語句就可以寫成:
SQLstr = “select * from abc_table where user_name = ‘ ” . $user_name . ” ‘ “; SQLstr = “select * from abc_table where user_name = ‘ ” . $user["name"] . ” ‘ “;
對比一下:
SQLstr=”select * from abc_table where user_name = ‘ abc ‘ ” ; SQLstr=”select * from abc_table where user_name =' ” . $user _name . ” ‘ “; SQLstr=”select * from abc_table where user_name =' ” . $user["name"] . ” ‘ “;
SQLstr可以分解為以下3個部分:
1:”select * from table where user_name = ‘ ” //固定SQL語句 2:$user //變量 3:” ‘ ”
附:大家也看到了 echo '<br/>'; html中的標簽在單引號和雙引號中都有效。
總結(jié)一下PHP引號使用原則
1.字符串的值用引號
2.PHP中盡量用單引號,HTML代碼全部用雙引號
3.在包含變量的時候,用雙引號可以簡化操作
4.復(fù)雜的情況下用大括號包起來
PHP引號還有一個用處就是,有的時候需要用php生成文本文件,換行符n需要用雙引號才能好使,單引號則會直接把n當成字符輸出。
使用總結(jié):在字符串里面不需要加入 變量 或者 單引號(')和反斜杠(\) 時,盡量用單引號引字符串,因為省去了雙引號檢查處理轉(zhuǎn)義和解析變量上面的時間。能用單引號盡量用單引號。
相關(guān)文章
PHP中關(guān)鍵字interface和implements詳解
PHP 類是單繼承,也就是不支持多繼承,當一個類需要多個類的功能時,繼承就無能為力了,為此 PHP 引入了類的接口技術(shù)。下面這篇文章主要跟大家介紹了關(guān)于PHP中關(guān)鍵字interface和implements的相關(guān)資料,需要的朋友可以參考借鑒,下面來一起看看吧。2017-06-06
thinkphp中U方法按路由規(guī)則生成url的方法
下面小編就為大家分享一篇thinkphp中U方法按路由規(guī)則生成url的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-03-03
THINKPHP+JS實現(xiàn)縮放圖片式截圖的實現(xiàn)
上傳圖片 -- 保存并顯示圖片 -- JS獲取縮略圖參數(shù) -- 提交位置參數(shù) -- 圖片縮放保存類處理圖片 -- 保存截取的圖片--更新數(shù)據(jù)庫 -- 跳轉(zhuǎn)2010-03-03

