我正在使用Laravel 5.2。我遇到了将数组发送到模型函数的问题,其中一个数值是Not Equal。
我检查这种方式是有效的:
$users = DB::table('users')
->where([ ['status','1'], ['subscribed','!=','1'], ])
->get();
但在我的情况下,我正在使用可重复使用的功能:
$whereData = array('name'=>'test' , 'id !=' => '5');
$users = DB::table('users')->where($whereData)->get();
此处不等于条件不起作用并提供错误。使用此可重用函数的正确语法是什么是whereData数组由多个运算符组成,如"!=,<>等等......"。
答案 0 :(得分:0)
我建议您采用以下方式。
仅在没有where条件的情况下发送数据。
因此,
$whereData = array('name'=>$username , 'statusid' => $userid);
$users = DB::table('users')->where('status', '=', $whereData['name'])->orWhere('subscribed', '<>', $whereData['statusid'])->get();
或如您所述,将where
替换为whereColumn
因此代码将是,
$whereData = array( array('name','test') , array( 'id','<>','5'));
$users = DB::table('users')->whereColumn($whereData)->get();