---
description: https://viblo.asia/p/tap-19-session-laravel-m68Z0xmAZkG
---

# 5. Sử dụng session Kiểm tra một session có tồn tại (Checking if a session exist) (Using the session)

Để kiểm tra sự tồn tại của một session, ta có thể sử dụng method `has` có trong lớp khởi tạo `Illuminate\Http\Request`. Method `has` sẽ trả về `true` nếu session tồn tại và có giá trị không phải là `null`.

Chẳng hạn mình đăng ký route sau:

```
use Illuminate\Http\Request;

Route::get('/session', function(Request $request) {
    dd($request->session()->has('foo'));
});
```

Do chúng ta chưa lưu trữ session nào có key là `foo` cả, nên kết quả sẽ là `false`.

Giờ các bạn thử lưu trữ session `foo` này nhưng với giá trị là `null` xem sao.

```
use Illuminate\Http\Request;

Route::get('/session', function(Request $request) {
    $request->session()->put('foo', null);
    
    dd($request->session()->has('foo'));
});
```

Vâng, kết quả thu được vẫn sẽ là `false`.

Nếu bạn chỉ muốn kiểm tra xem session có tồn tại hay không, dù có giá trị `null` vẫn chấp nhận thì bạn có thể sử dụng method `exists` thay cho `has`.

```
use Illuminate\Http\Request;

Route::get('/session', function(Request $request) {
    $request->session()->put('foo', null);
    
    dd($request->session()->exists('foo'));
});
```

Lúc này kết quả ta nhận được sẽ là `true`.
