我是Laravel的新手,我有這個問題。 我嘗試了這行代碼,它工作正常:return redirect("/cards/{$note->id}");
把一個變量放在一個字符串中PHP
但是當過我嘗試使用單引號,這是行不通的:return redirect('/cards/{$note->id}');
我怎樣才能解決這個問題?
我是Laravel的新手,我有這個問題。 我嘗試了這行代碼,它工作正常:return redirect("/cards/{$note->id}");
把一個變量放在一個字符串中PHP
但是當過我嘗試使用單引號,這是行不通的:return redirect('/cards/{$note->id}');
我怎樣才能解決這個問題?
你在做什麼首先是所謂的變量插值或字符串插值。你可以閱讀更多關於它here, on PHP docs和here, on Wiki。
這是PHP中的一項功能,允許您傳遞字符串並在變量/佔位符內部進行解釋。
在第二個例子中,你正在使用單引號,不提供此功能,所以你必須打破它和手動添加變量字符串:
return redirect('/cards/' . $note->id);
如果您有興趣更詳盡的解釋和它背後的性能,那麼你可以通過Blizz
他總結閱讀更多關於this answer here是:
永遠誰做了測試,結論是使用單引號在性能方面略好一些。最後,單引號只會導致連接,而雙引號會強制解釋器解析變量的完整字符串。
然而,對PHP的最新版本而言,這樣做的額外負載是如此之小,以至於大多數時候的結論是它並不重要。
喜歡使用它:
return redirect('/cards/'. $note->id);
採用單或雙引號
您應該使用"/cards/{$note->id}"
或'/cards/'.$note->id
雙引號字符串最重要的特徵是事實該變量名稱將被擴展。
當在雙引號或heredoc中指定字符串時,會在其中分析變量。
大括號是字符串插值的一部分,根本不應該包含在單引號字符串中。 –
使用''/ cards /'。 $ note-> id' – Karthi
與laravel無關其基本的PHP的東西單引號與雙引號 –
我是新的,我認爲比laravel可以有它自己的方式做這些事 – Prince