Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 取消或重写Laravel中的WHERE子句?_Mysql_Laravel_Laravel 5 - Fatal编程技术网

Mysql 取消或重写Laravel中的WHERE子句?

Mysql 取消或重写Laravel中的WHERE子句?,mysql,laravel,laravel-5,Mysql,Laravel,Laravel 5,我可以取消或重写WHERE条件吗 我有以下疑问 <?php $userOrUsers = \DB::table('users')->where('id',7); if(!$userOrUsers->exists()){ $userOrUsers->where('id','!=',7); } $userOrUsers = $userOrUsers->get(); dd($userOrUsers); 您可以将查询用作: if($user = \DB::ta

我可以取消或重写WHERE条件吗

我有以下疑问

<?php

$userOrUsers = \DB::table('users')->where('id',7);
if(!$userOrUsers->exists()){
    $userOrUsers->where('id','!=',7);
}
$userOrUsers = $userOrUsers->get();

dd($userOrUsers);
您可以将查询用作:

if($user = \DB::table('users')->find(7)) return $user;
else return \DB::table('users')->all();
您可以将查询用作:

if($user = \DB::table('users')->find(7)) return $user;
else return \DB::table('users')->all();

您可以执行一些收集操作

$userOrUsers = \DB::table('users')->all();

if($userOrUsers->contains('id', 7)) {
$userOrUsers = $userOrUsers->filter(function ($value, $key) {
    return $value->id == 7;
})->all();
};

您可以执行一些收集操作

$userOrUsers = \DB::table('users')->all();

if($userOrUsers->contains('id', 7)) {
$userOrUsers = $userOrUsers->filter(function ($value, $key) {
    return $value->id == 7;
})->all();
};

请解释一下,它不是understandable@akbansa如果让这个用户得到他,否则得到alla注意:如果id 7不存在,那么就不需要where id!=7?@tan是的,正确,不使用两个get在您的场景中不可能只使用一个
get
,除非您总是获取所有用户,然后在应用程序代码中选择或过滤掉特定用户。请解释,这不是understandable@akbansa如果让这个用户得到他,否则得到alla注意:如果id 7不存在,那么就不需要where id!=7?@tan是的,正确,不使用两个get在您的场景中不可能只使用一个
get
,除非您总是获取所有用户,然后在app code.condition中选择或过滤掉特定用户。condition,不要使用两个查询或两个get我想我们需要首先检查记录是否存在,不要使用两个查询或两个getI我想我们需要首先检查记录是否存在