我正在尝试构建一些复杂的查询,其中一切都 OK ,直到我尝试使用高级where条件。
在下面的代码中我收到错误说
ErrorException:未定义的变量:文件D中的用户:第285行的...... ** \ app \ Http \ Controllers \ ApiAuthController.php
并且{28}在$query->where("tbl_transactions.from_user_id", "=", $user->id)
orWhere()
行
public function loadTransactions()
{
$token = JWTAuth::getToken();
$user = JWTAuth::toUser($token);
return DB::table('tbl_transactions')
->join('tbl_users as fromu', 'fromu.id', '=', 'tbl_transactions.from_user_id')
->join('tbl_users as tou', 'tou.id', '=', 'tbl_transactions.to_user_id')
->select('tbl_transactions.id', 'tbl_transactions.from_user_id', 'tbl_transactions.to_user_id', 'tbl_transactions.amount', 'tbl_transactions.created_at', 'tbl_transactions.status', 'fromu.userid', 'tou.userid', 'tou.phone as tophone', 'fromu.phone as fromphone')
->orWhere(function ($query) {
$query->where("tbl_transactions.from_user_id", "=", $user->id)// here the problem is (undefined **$user**)
->where('tbl_transactions.to_user_id', '=', $user->id);
})
->orderBy('tbl_transactions.id', 'desc')
->take(50)
->get();
}
我是laravel的新手。这里的任何人都可以帮助我很棒。
答案 0 :(得分:2)
您需要使用ionic cordova run browser -l
子句使闭包范围内的变量可访问。所以,改变这个:
use
对此:
->orWhere(function ($query) {
答案 1 :(得分:1)
我太懒了,无法链接其他100个帖子,这些帖子都是重复的。