Method Eloquent first() adalah method yang digunakan untuk mengambil data pertama dari database. Method ini akan mengembalikan objek model jika data ditemukan, atau null jika data tidak ditemukan.
Jika methodfirst() mengembalikan null , maka akan terjadi Null Pointer Exception (NPE). NPE adalah jenis exception yang terjadi ketika program mencoba mengakses properti atau method dari objek yang null.
Untuk mencegah NPE, Anda dapat menggunakan methodfirstOrFail() .Method firstOrFail()akan mengembalikan objek model jika data ditemukan, atau akan melempar exception jika data tidak ditemukan.
Berikut adalah contoh penggunaan methodfirstOrFail():

Jika data pengguna ditemukan, maka objek modelUserakan disimpan dalam variabel $user. Jika data pengguna tidak ditemukan, maka akan dilemparkan exceptionIlluminate\Database\Eloquent\ModelNotFoundException.
Anda juga dapat menggunakan method firstOrNull(). Method firstOrNull() akan mengembalikan objek model jika data ditemukan, atau akan mengembalikan nulljika data tidak ditemukan.
Berikut adalah contoh penggunaan method firstOrNull():

Jika data pengguna ditemukan, maka objek model User akan disimpan dalam variabel $user. Jika data pengguna tidak ditemukan, maka variabel $user akan berisi nilai null.
Dengan menggunakan method firstOrFail() atau firstOrNull(), Anda dapat mencegah NPE saat memanggil method Eloquent first().
Berikut adalah beberapa tips untuk mencegah NPE saat menggunakan Eloquent:
- Gunakan method firstOrFail() atau firstOrNull() untuk mengambil data pertama dari database.
- Pastikan bahwa data yang Anda cari memang ada di database.
- Gunakan method where() atau whereHas() untuk memfilter data sebelum mengambilnya dari database.
- Gunakan method count() untuk memeriksa apakah data yang Anda cari ada di database.
Dengan mengikuti tips di atas, Anda dapat mencegah NPE saat menggunakan Eloquent.