我很难将eloquent
方法作为参数传递。
这是我的方法,
public function getPayment($paymentId, $eloquentMethod)
{
if (!empty($orderId)) {
return DB::connection('my_db')->table('payment')->{$eloquentMethod}();
}
return null;
}
如果我通过$this->getPayment('1', 'get')
但如果我通过$this->getPayment('1', 'pluck("payment_id")')
提前致谢。
答案 0 :(得分:1)
$eloquentMethod
你有多少可能性?
如果有许多可能性,例如“获取”,“先”等等,那么你可以制作:
public function getPayment($paymentId, $eloquentMethod = 'get()')
{
if (!empty($orderId)) {
switch ($eloquentMethod) {
case "get":
return DB::connection('my_db')->table('payment')->get();
break;
case "first":
return DB::connection('my_db')->table('payment')->first();
break;
case default:
return null;
}
}
}