Làm thế nào để xóa bộ nhớ cache của Laravel một cách nhanh chóng

Cập nhật vào

Mục luc:

Làm thế nào để xóa bộ nhớ cache của Laravel một cách nhanh chóng

Giới thiệu về việc xóa bộ nhớ cache của Laravel

Khi không chắc chắn, hãy xóa bộ nhớ cache. Trong bài viết này, bạn sẽ tìm hiểu về cách xóa mọi loại cache mà Laravel sử dụng.

Để xóa bộ nhớ cache trong Laravel, chạy lệnh php artisan optimize:clear. Điều này hoạt động dù bạn đang sử dụng loại trình điều khiển cache nào. Nó cũng sẽ xóa các tệp bootstrap (sự kiện, biên dịch, cấu hình, định tuyến và giao diện).

Khi chúng ta đã làm điều này, hãy ghi nhớ rằng Laravel có nhiều loại cache. Framework này cung cấp một lệnh cho mỗi loại cache mà bạn có thể sử dụng để có mức độ kiểm soát cụ thể hơn.

Xóa tất cả các bộ nhớ cache trong Laravel

Như chúng ta đã thấy, giải pháp tiện lợi để xóa bộ nhớ cache trong Laravel là sử dụng lệnh php artisan optimize:clear, lệnh này sẽ xóa các bộ nhớ cache sau đây:

  • Bộ nhớ cache cấu hình.
  • Bộ nhớ cache bootstrap.
  • Bộ nhớ cache sự kiện được phát hiện tự động.
  • Bộ nhớ cache ứng dụng.
  • Bộ nhớ cache định tuyến.
  • Bộ nhớ cache giao diện.

Xóa bộ nhớ cache ứng dụng của Laravel

Để xóa bộ nhớ cache ứng dụng của Laravel, chạy lệnh php artisan cache:clear. Dù bạn đang sử dụng cache trên tệp, Redis hay memcached, nó sẽ bị xóa hoàn toàn.

Bạn cũng có thể xóa một giá trị cụ thể từ bộ nhớ cache bằng cách sử dụng lệnh php artisan cache:forget <key> [store]. Điều này rất hữu ích khi bạn muốn sửa chữa một điều gì đó mà không làm ảnh hưởng đến các phần khác.

Và điều tuyệt vời là bạn cũng có thể xóa cache cho một nhãn (tag) cụ thể bằng cách sử dụng lệnh php artisan cache:clear --tags some-tag,some-other-tag.

Xóa bộ nhớ cache của ứng dụng Laravel theo cách lập trình

Để xóa bộ nhớ cache của ứng dụng Laravel theo cách lập trình, sử dụng Cache facade.

Bạn có thể xóa một key cụ thể như sau:

1use Illuminate\Support\Facades\Cache;
2 
3Cache::forget('some-key');

Hoặc xóa toàn bộ cache:

1use Illuminate\Support\Facades\Cache;
2 
3Cache::flush();

Nếu bạn không muốn import thêm một class nào, bạn có thể sử dụng helper cache():

1cache()->forget('some-key');
2cache()->flush();

Xóa bộ nhớ cache cấu hình của Laravel

Để xóa bộ nhớ cache cấu hình của Laravel, hãy chạy lệnh php artisan config:clear. Tệp bootstrap/cache/config.php sẽ bị xóa và cài đặt cấu hình mới của bạn sẽ được áp dụng.

Xóa bộ nhớ cache tự động phát hiện sự kiện trong Laravel

Để xóa bộ nhớ cache tự động phát hiện sự kiện trong Laravel, hãy chạy lệnh php artisan event:clear. Lệnh này sẽ xóa tệp bootstrap/cache/events.php. Bây giờ Laravel có thể phát hiện tất cả các trình xử lý sự kiện mới của bạn.

Tìm hiểu thêm về việc tự động phát hiện sự kiện trong Laravel.

Xóa bộ nhớ cache định tuyến của Laravel

Để xóa bộ nhớ cache định tuyến của Laravel, hãy chạy lệnh php artisan route:clear. Laravel sẽ xóa tệp bootstrap/cache/routes-v7.php. Các routes mới của bạn hiện đã có sẵn và sẵn sàng được khám phá.

Xóa bộ nhớ cache các tác vụ được lập lịch trong Laravel

Để xóa bộ nhớ cache các tác vụ được lập lịch trong Laravel, hãy chạy lệnh php artisan schedule:clear-cache để xóa sạch dữ liệu hiện có.

Tuy nhiên, lưu ý rằng trừ khi bạn có lý do chính đáng, không nên chạy lệnh này trong môi trường production. Muốn biết tại sao? Hãy kiểm tra hướng dẫn của Laravel về cách ngăn chặn trùng lắp các tác vụ.

Xóa bộ nhớ cache giao diện trong Laravel

Để xóa bộ nhớ cache của giao diện trong Laravel, hãy chạy lệnh php artisan view:clear. Framework sẽ làm trống nội dung trong thư mục storage/views.

Tắt hoàn toàn bộ nhớ cache của ứng dụng Laravel

Để tắt bộ nhớ cache của ứng dụng Laravel, hãy thay đổi biến môi trường CACHE_DRIVER thành null.

1CACHE_DRIVER=null

Hành động này không xóa bộ nhớ cache, nhưng ngăn chặn mọi thứ khỏi việc được lưu trữ trong cache hoặc truy xuất từ cache.

Cảm ơn các bạn đã dành thời gian đọc bài!

Recommended