第一次我搜索瞭如何用PHP連接到數據庫,我已經在這個例子中偶然發現:這兩個之間的區別...?
mysql_connect("$host", "$username", "$password");
但是那是什麼,這之間的區別?
mysql_connect($host, $username, $password);
第一次我搜索瞭如何用PHP連接到數據庫,我已經在這個例子中偶然發現:這兩個之間的區別...?
mysql_connect("$host", "$username", "$password");
但是那是什麼,這之間的區別?
mysql_connect($host, $username, $password);
實際上沒有區別形成用戶視角。雙引號中的變量將被評估,所以;
$hello="world";
$world="hello";
echo "$hello $world"
將打印「世界你好」。
此功能允許你做的
"$very $annoying $string"
代替 $very." ".$annoying." ".$string
這就像shell腳本(如果你熟悉shell腳本)。
第一你只是路過的字符串連接,如同$的用戶名是您的實際用戶名,後者你傳遞變量$的用戶名,這將等於在用$更早的時候什麼已設置的值username =「myUsername」
引用的變量是在PHP蒙上他們作爲字符串,雖然他們已經是字符串。這只是一個冗餘。如果它們是單引號而不是雙引號,那麼用戶名字面上應該是'$ username' –
啊,我雖然需要用{}包圍它們,以便將它識別爲字符串。很長一段時間.. – TheRealTy
它的結果將完全相同!所以不要擔心。但是如果你應該選擇它們,你應該選擇第二個。
唯一的區別在於,PHP需要處理字符串並檢查是否存在變量,並用各自的值替換變量。
你可以閱讀更多關於此這裏:
http://www.php.net/manual/en/language.types.string.php#language.types.string.parsing
編輯
但是如前所述,輸出將是相同的。
"$var"
是完全廢話。這是一個值爲$var
的字符串。如果字符串不包含任何東西,但$var
,它等同於$var
:
$var = "foo";
$nonsense = "$var"; // → "foo"
"$var" == $var
。原樣使用$var
,無需將其包裝在一個字符串中。它也更快。
作爲一個補充答案(不相關),只有當你想在一個字符串中使用'$ var'時才使用'「$ var」'。 '「你好,我的名字是$ name!」'相當於''你好,我的名字是'。 $名稱。 '!''。 – SteeveDroz
作爲補充擴展,如果'$ var'不是一個字符串,它將被轉換爲一個字符串,這可能會改變該值(例如數組)。儘管如此,你通常不會對數組做這樣的事情,所以幾乎所有的時候它都是無用的。如果你想明確地轉換成字符串,通常首選'(string)$ var'。 – deceze
結果沒有區別,除非在第二個不是數據類型string
。
PHP中的第一個"$string"
被解析爲獲得「valueofstring」。當你不得不插入字符串時,PHP消除了串聯字符串的壓力。
"something" . $string . "somethingelse"
"something{$string}somethingelse"
兩者都是相同的。
爲了清楚更長的字符串,建議您使用大括號{}
作爲"{$string}"
。
$var = "World"
echo "Hello $var" // Output "Hello World"
echo 'Hello $var' // Output "Hello $var"
雙引號替換變量內容。
如果你有一個數組,你必須做更多的事情:
$var = array("World")
echo "Hello {$var[0]}" // Output "Hello World"
注意尖括號{} betwenn是$ var [0]
這是我最容易理解的答案。我會接受這個。謝謝你澄清這一點。您還幫助我減少了字符串文字中的點數量。 – Vercas