如何获取 laravel 中所选列的行值
how to get row value of selected column in laravel
如果我 return x 它将显示一个带有它的 id 的 franchise_id 列,如果我 return 变量 y 它什么也不会显示。
$x = Unit::select('franchise_id')->where('id', $id)->first();
$y = Franchise::select('case_number')->where('id', $x)->first();
return $x;
我想更新特许经营 ID 等于单位特许经营 ID 的特许经营案例编号
首先,你应该更好地命名你的变量。其次,$x
在您的案例中将是您的 Unit
模型的一个实例。
然后您可以使用 $x->franchise_id
访问 franchise_id
。最后,您可以使用它来对 Franchise
模型执行更新。
这是一个示例(更改了变量名称)
$unit = Unit::select('franchise_id')
->where('id', $id)
->first();
Franchise::where('id', $unit->franchise_id)
->update([
'case_number' => 'xxx'
]);
如果您只想访问 $unit
中特定行的值,以下方法也可行:
$unit = Unit::find($id)->value('franchise_id');
Franchise::where('id', $unit)
->update([
'case_number' => 'xxx'
]);
或者,考虑使用 Eloquent Relationships。
编辑:如果要检查$unit
是否为空,可以这样做:
$unit = Unit::select('franchise_id')
->where('id', $id)
->first();
// If there's no unit, it will return null
// which means, you can just do the following
if($unit) {
Franchise::where('id', $unit->franchise_id)
->update([
'case_number' => 'xxx'
]);
}
如果我 return x 它将显示一个带有它的 id 的 franchise_id 列,如果我 return 变量 y 它什么也不会显示。
$x = Unit::select('franchise_id')->where('id', $id)->first();
$y = Franchise::select('case_number')->where('id', $x)->first();
return $x;
我想更新特许经营 ID 等于单位特许经营 ID 的特许经营案例编号
首先,你应该更好地命名你的变量。其次,$x
在您的案例中将是您的 Unit
模型的一个实例。
然后您可以使用 $x->franchise_id
访问 franchise_id
。最后,您可以使用它来对 Franchise
模型执行更新。
这是一个示例(更改了变量名称)
$unit = Unit::select('franchise_id')
->where('id', $id)
->first();
Franchise::where('id', $unit->franchise_id)
->update([
'case_number' => 'xxx'
]);
如果您只想访问 $unit
中特定行的值,以下方法也可行:
$unit = Unit::find($id)->value('franchise_id');
Franchise::where('id', $unit)
->update([
'case_number' => 'xxx'
]);
或者,考虑使用 Eloquent Relationships。
编辑:如果要检查$unit
是否为空,可以这样做:
$unit = Unit::select('franchise_id')
->where('id', $id)
->first();
// If there's no unit, it will return null
// which means, you can just do the following
if($unit) {
Franchise::where('id', $unit->franchise_id)
->update([
'case_number' => 'xxx'
]);
}