Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/239.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php laravel 5.4中帖子的自动删除日期_Php_Laravel_Soft Delete - Fatal编程技术网

Php laravel 5.4中帖子的自动删除日期

Php laravel 5.4中帖子的自动删除日期,php,laravel,soft-delete,Php,Laravel,Soft Delete,我想在我的应用程序中使用Laravel的softdelete()方法,我想说在发布日期和时间30天后软删除帖子,目前我的应用程序中没有任何代码,因为我正在研究是否可能 我的问题是,我怎么能说文章必须在发布日期后30天内删除?您需要的是使用 您需要手动添加一个cronjob,它实际上会触发Laravel中的调度程序。在此之后,您将创建一个命令来删除这些旧帖子 此命令按您希望的频率进行调度,调度程序将处理该调度命令的每次运行(请参见)。创建作业或命令并在其中执行操作。设置任务计划程序,并根据所需的删

我想在我的应用程序中使用Laravel的
softdelete()
方法,我想说在发布日期和时间30天后软删除帖子,目前我的应用程序中没有任何代码,因为我正在研究是否可能


我的问题是,我怎么能说文章必须在发布日期后30天内删除?

您需要的是使用

您需要手动添加一个cronjob,它实际上会触发Laravel中的调度程序。在此之后,您将创建一个命令来删除这些旧帖子


此命令按您希望的频率进行调度,调度程序将处理该调度命令的每次运行(请参见)。

创建作业或命令并在其中执行操作。设置任务计划程序,并根据所需的删除后速度,将任务计划为每天或每小时运行一次作业或命令

如果简单的话,也可以直接在调度程序中编写代码

$schedule->call(function () {
    Post::where('published_at', '<=', Carbon::now()->subDays(30))->delete();
})->daily();
$schedule->call(函数(){

Post::where('published_at'),所以你这样说我不需要使用cornjob,对吗?这反过来需要你设置一个cronjob,让laravel任务调度器工作。