ما در این مطلب حذف داده های قدیمی جداول دیتابیس با لاراول را می خواهیم با این فرضیات انجام دهیم
- داده های یک ماه قبل
- جدول visit
- اجرای کوئری با ورود کاربر به پنل کاربری
در مورد گزینه آخری شما می توانید از یک جاب در لاراول استفاده کنید که مثلا ساعت 3 بامداد اتوماتیک این کار را برای شما انجام دهد
قدم اول : به دست آوردن تاریخ 30 روز پیش، من از Carbon برای اینکار استفاده کردم شما میتونید از strtotime خود php هم استفاده کنید
use Carbon\Carbon; // اینو باید به اول کلاستون اضافه کنید
خب تاریخ 30 روز پیش رو ایجاد می کنیم
$date=Carbon::now()->subDays(30)->format('Y-m-d');
مرحله آخر میگیم از مدل Visit (همون جدول ویزیت در دیتابیس که تو لاراول براش مدل ساختیم) سطرهایی که با شرط ما برابری می کنند رو حذف کن
Visit::where('created_at','<=',$date)->delete();
کل کد برای حذف داده های قدیمی جداول دیتابیس با لاراول
namespace App\Http\Controllers\Admin;
use App\Visit;
use Carbon\Carbon;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
class AdminController extends Controller
{
public function index()
{
$date=Carbon::now()->subDays(30)->format('Y-m-d');
$visit=Visit::where('created_at','<=',$date)->delete();
}
}