把一个变量放在一个字符串中PHP
我是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