웹사이트나 애플리케이션이 발전함에 따라 데이터의 양은 점점 더 많아지고, 데이터 처리 속도는 점점 느려집니다. 또한 만료된 데이터가 너무 많으면 공간을 많이 차지하므로 데이터베이스 성능이 저하되고 웹 사이트나 애플리케이션이 느려질 수 있습니다. 따라서 만료된 데이터를 정기적으로 삭제하는 것이 매우 중요하고 필요합니다. Laravel 프레임워크에서는 Laravel의 만료 삭제 기능을 사용하여 이 문제를 해결할 수 있습니다.
Laravel의 만료된 삭제 기능은 매우 강력하여 수동 개입 없이 만료된 데이터를 자동으로 삭제할 수 있습니다. 이를 통해 데이터베이스를 보다 효율적으로 실행하고 웹 사이트 또는 애플리케이션의 성능을 최적화할 수 있습니다. 라라벨의 만료 삭제 기능을 자세히 살펴보겠습니다.
Laravel의 만료 삭제 기능에는 주로 예약된 만료 시간 삭제와 자동 만료 시간 업데이트의 두 가지 측면이 포함됩니다. 아래에서는 각각 이 두 가지 측면을 소개합니다:
php artisan schedule:run
그런 다음 Laravel의 작업 스케줄러에서 예약된 작업을 정의해야 합니다. 구체적인 단계는 다음과 같습니다.
①app/Console/Kernel.php 파일을 엽니다.
②일정 기능에 다음 코드를 추가합니다.
$schedule->call(function () { DB::table('table_name')->where('created_at', '<', Carbon::now()->subDays(7))->delete(); })->daily();
이 코드 줄의 기능은 다음과 같습니다. 0시에 작업을 실행합니다. 매일 삭제하고 7일 전에 삭제하는 데이터입니다. 그 중 table_name은 데이터를 삭제하려는 테이블의 이름이다. Carbon은 날짜와 시간을 보다 편리하게 조작할 수 있는 날짜 및 시간 라이브러리입니다. 이 작업은 매일 0시에 한 번씩 실행되며, 7일이 지난 데이터는 모두 자동으로 삭제됩니다.
Laravel은 만료 시간을 자동으로 쉽게 업데이트할 수 있는 시간을 조작할 수 있는 Carbon 라이브러리를 제공합니다. 구체적인 단계는 다음과 같습니다.
① 앱/모델 폴더를 엽니다.
② 만료 시간과 함께 자동으로 업데이트할 모델 파일을 찾습니다.
③ 모델의 $dates 속성에 자동으로 업데이트할 날짜 필드를 추가합니다.
protected $dates = ['expired_at'];
protected $dates = ['expire_time'];
public function updateExpiredTime() { $this->expired_at = Carbon::now()->addDays(30); $this->save(); }
위 내용은 Laravel에서 만료된 삭제를 구현하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!