我有一个关于在 Laravel 中使用引号的问题来解释我放了一个代码片段。
public function index(Request $request){
$query=trim($reques->('serchText'));
$categorias=DB::table('categoria')
->where('nombre','LIKE','%'.$query.'%')
->where('condicion','=','1')
->orderBy('idcategoria','DESC')
->paginate(7);
return view('almacen.categoria.index',["categorias"=>$categoria,"serchText"=>$query]);
}
在我返回视图的部分中,我使用单引号,但如果我使用普通引号,它仍然返回视图,我不知道我应该使用哪个以及为什么,另一方面,在我分配值的部分中“类别”参数
["categorias"=>$categoria,"serchText"=>$query]
如果我用这些引号写它可以吗?还是应该用简单的食物,引号中的“类别”变成像“serchText”这样的对象?
引号的使用与框架无关,也就是说这是PHP语言的一个特点,引号的使用是指定一个字面量类型String,在PHP中声明String的时候不只有这两种方式它,但有4种方法:
单引号
这是声明字符串的最基本方式。例子:
与 heredoc 和双引号语法不同,特殊字符的变量和转义语句在包含在单引号字符串中时不会被扩展。也就是说,
\n
并且$a
将显示为文字字符串。双引号
如果字符串用双引号 (") 分隔,PHP 会将以下转义序列解释为特殊字符:
双引号字符串的最重要特征是变量名被扩展。也就是说,它
"$a"
会将分配给 a$a
而不是 $a 的值显示为文字字符串,例如:总之,单引号显示定义的文本,使用双引号解释特殊字符并扩展变量的值以显示它。
回答您的问题,两种方式都可以,例如,如果您想拥有可变数组索引,则可以使用双引号来定义以下内容:
虽然上面也可以用单引号来完成,如下所示:
但是,如果您连接更多值,这可能会使代码有点不可读。
有关定义字符串的其他方式的更多信息,请查看官方 PHP 文档http://php.net/manual/es/language.types.string.php
以下英文 SO 问题也可能对您有所帮助https://stackoverflow.com/questions/3446216/what-is-the-difference-between-single-quoted-and-double-quoted-strings-in-php