84669 人學習
152542 人學習
20005 人學習
5487 人學習
7821 人學習
359900 人學習
3350 人學習
180660 人學習
48569 人學習
18603 人學習
40936 人學習
1549 人學習
1183 人學習
32909 人學習
我有點困惑為什麼我在 PHP 中看到一些程式碼,其中的字串放在單引號中,有時放在雙引號中。
我只知道在.NET,或者C語言中,如果它是在單引號中,那就意味著它是一個字符,而不是一個字串。
事物在雙引號中計算,但不在單引號中計算:
$s = "dollars"; echo 'This costs a lot of $s.'; // This costs a lot of $s. echo "This costs a lot of $s."; // This costs a lot of dollars.
可以指定
PHP 字串不只是兩種方式,而是四種方式。
\'
\\ code> (所以是的,即使是單引號字串也會被解析)。
$type
回顯「The $types are」
$types
echo "The {$type} are"
開頭。在該運算符之後,提供一個標識符,然後提供一個換行符。接下來是字串本身,然後再次使用相同的標識符來結束引用。您不需要在此語法中轉義引號。
序列進行標識,但後面的標識符用單引號括起來,例如。nowdoc 中不進行解析。
。nowdoc 中不進行解析。
註解:單引號內的單引號和雙引號內的雙引號必須轉義:
$string = 'He said "What\'s up?"'; $string = "He said \"What's up?\"";
速度:沒有差別。請閱讀可信文章一位 PHP 核心開發人員談到了這個問題。說到測試,我們永遠不應該認為它們是理所當然的。必須明白,編寫可信的測試,特別是解釋其結果需要大量的知識和經驗。這意味著大多數測試都是假的。例如,在這樣的程式碼中
for($i=0;$i<100000;$i++) { 'string'; }
帶引號的字串與整個腳本一起僅被解析一次,然後被轉換為操作碼。然後它被執行一百萬次。所以它測量除了解析之外的任何東西。這只是冰山一角。對於這樣的奈米基準,幾乎不可能創建一個不會被某些幹擾性副作用破壞的可靠測試。
事物在雙引號中計算,但不在單引號中計算:
可以指定
PHP 字串不只是兩種方式,而是四種方式。
\'
對其進行轉義,而要顯示反斜線,您可以使用另一個反斜線\\ code> (所以是的,即使是單引號字串也會被解析)。
$type
並且您想要回顯「The $types are」
。這將會尋找變數$types
。若要解決此問題,請使用echo "The {$type} are"
。看看字串解析了解如何使用陣列變數等。開頭。在該運算符之後,提供一個標識符,然後提供一個換行符。接下來是字串本身,然後再次使用相同的標識符來結束引用。您不需要在此語法中轉義引號。
序列進行標識,但後面的標識符用單引號括起來,例如
。nowdoc 中不進行解析。
註解:單引號內的單引號和雙引號內的雙引號必須轉義:
速度:
沒有差別。
請閱讀可信文章一位 PHP 核心開發人員談到了這個問題。說到測試,我們永遠不應該認為它們是理所當然的。必須明白,編寫可信的測試,特別是解釋其結果需要大量的知識和經驗。這意味著大多數測試都是假的。例如,在這樣的程式碼中
帶引號的字串與整個腳本一起僅被解析一次,然後被轉換為操作碼。然後它被執行一百萬次。所以它測量除了解析之外的任何東西。這只是冰山一角。對於這樣的奈米基準,幾乎不可能創建一個不會被某些幹擾性副作用破壞的可靠測試。