如何使用 Eloquent 检查字段是否不为空?

laravelphpserver side programming更新于 2025/4/29 23:52:17

在 Eloquent 模型中,您可以使用 whereNotNull() 方法从数据库中获取非空值。

示例 1

在此示例中,我们检查字段 rememer_token 是否不为空。

<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use App\Models\User; class UserController extends Controller{ public function index() { $users = User::whereNotNull('remember_token')->get(); foreach($users as $user) { echo $user->name."<br/>"; } } }

输出

上面的输出是 −

Siya Khan
Heena Khan
Seema

上面的 sql 查询是 −

SELECT *
FROM users
WHERE Remember_token IS NOT NULL;

输出

上面代码的输出是 −

示例 2

使用 DB Facade,您可以执行如下所示的相同操作 −

<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use Illuminate\Support\Facades\DB; class UserController extends Controller{ public function index() { $users = DB::table('users') ->whereNotNull('remember_token') ->get(); foreach($users as $user) { echo $user->name."<br/>"; } } }

输出

上述代码的输出为 −

Siya Khan
Heena Khan
Seema

示例 3

方法 whereNull() 可帮助您获取具有 NULL 值的字段。在 Eloquent 模型中,示例如下 −

<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use App\Models\User; class UserController extends Controller{ public function index() { $users = User::whereNull('remember_token')->get(); foreach($users as $user) { echo $user->name."<br/>"; } } }

输出

上述代码的输出为 −

Neha Singh
d7jhMWRMQe
k118AjAswp
7ZH2Vk0TAp
w8QSXDIBVU
feO56tC0sO
MntJcvWT2L
RANLQbtj44
bben5rsdVv

示例 4

对于 DB Facade,使用 whereNull() 方法,如下所示 −

<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use Illuminate\Support\Facades\DB; class UserController extends Controller { public function index() { $users = DB::table('users') ->whereNull('remember_token') ->get(); foreach($users as $user) { echo $user->name."<br/>"; } } }

输出

上面的输出是 −

Neha Singh
d7jhMWRMQe
k118AjAswp
7ZH2Vk0TAp
w8QSXDIBVU
feO56tC0sO
MntJcvWT2L
RANLQbtj44
bben5rsdVv

相关文章