Laravel “拉威尔误差”;strtolower()要求参数1为字符串“;?
我将json传递给一个laravel路由,如下所示,并运行这个查询sql视图 {“列”:[“fname”、“lname”、“mobile”]、“offset”:“1”、“limit”:“25”, “订单”:[“fname”、“asc”]、[“lname”、“asc”], “过滤器”:[[“性别”、“=”、“M”]} 这是放置在控制器中的函数,它将调用路由Laravel “拉威尔误差”;strtolower()要求参数1为字符串“;?,laravel,laravel-5.3,Laravel,Laravel 5.3,我将json传递给一个laravel路由,如下所示,并运行这个查询sql视图 {“列”:[“fname”、“lname”、“mobile”]、“offset”:“1”、“limit”:“25”, “订单”:[“fname”、“asc”]、[“lname”、“asc”], “过滤器”:[[“性别”、“=”、“M”]} 这是放置在控制器中的函数,它将调用路由 public function fetch_contacts(Request $request){ if($request->h
public function fetch_contacts(Request $request){
if($request->header('content-type') == 'application/json' && !empty($request->header('Device')) && !empty($request->header('UID'))){
$query = DB::connection('mysql_freesubs')->table("contact_view")
->select($request->columns);
if(!empty($request->filter))
$query = $query->where($request->filter);
if(!empty($request->offset))
$query = $query->offset($request->offset);
if(!empty($request->limit))
$query = $query->limit($request->limit);
if(!empty($request->order))
$query = $query->orderBy($request->order);
$contacts = $query->get();
return $contacts;
}
我哪里出错了?您正在将多维数组传递给
orderBy
,请尝试以下操作:
$query = $query->orderBy($request->order[0][0], $request->order[0][1]);
$query = $query->orderBy($request->order[1][0], $request->order[1][1]);
我想是的,这个错误在别的地方。请检查引发异常的行中的文件名和行号好吗?错误在grammer.php中,它是框架的一部分。“Grammar.php第58行中的ErrorException:strtolower()期望参数1是字符串,数组给定”代码的哪一行触发它?我们可以这样做。其中([[“fname”、“=”、“sam”]、[“gender”、“=”、“M”]);你说得对。但是使用
orderBy()