Eric_Lian Laravel 计划任务:https://laravel.com/docs/9.x/scheduling 使用 Eloquent 1 2 的数据库查询构造器,从 User Entity 里开始构建查询。 // last_ssen_at 上一次活跃时间 // Carbon 的文档 https://carbon.nesbot.com/docs/ $selectedUser = User::where("last_seen_at", "<", Carbon::now()->addDay(7)).get(); foreach ($selectedUser as $user) { // 用户都拿出来了,爱干啥干啥 } 如果实在要查发帖时间。要么用 Eloquent 的查询语句查,要么就监听发帖事件自己记录一下。大概就这些套路。监听事件的方法也是看 Laravel 文档。 Flarum 代码中监听用户发帖的例子 监听 https://github.com/flarum/framework/blob/a1a2598c0345896ac51a475ae46c7cb1e2764909/framework/core/src/User/UserMetadataUpdater.php#L26 事件逻辑 https://github.com/flarum/framework/blob/a1a2598c0345896ac51a475ae46c7cb1e2764909/framework/core/src/User/UserMetadataUpdater.php#L35 注册监听器 https://github.com/flarum/framework/blob/a1a2598c0345896ac51a475ae46c7cb1e2764909/framework/core/src/User/UserServiceProvider.php#L110 你可能还想问怎么获取 Flarum 里的对象实例。这个我忘了,忘了到底是 app 还是 resolve,这里也是 IOC 和对象注入的概念。因为我个人习惯是把想要用到的对象写到构造函数里,这样我就不用管他们是怎么来的了。具体也自由发挥吧。不是什么大问题。最后希望这段文字能帮到你。主要是 Flarum 的文档里默认了大家已经会用 Laravel 了。确实有点令人难受。