Php 如何在laravel中设置cron用户智能
我已经设置了为用户运行股票更新的cron,现在,如果用户将股票更新设置为“Yes”,而不仅仅是该cron应该为特定用户运行,我就有了用户方面的设置 我在谷歌上搜索过,但找不到任何解决方案Php 如何在laravel中设置cron用户智能,php,laravel,Php,Laravel,我已经设置了为用户运行股票更新的cron,现在,如果用户将股票更新设置为“Yes”,而不仅仅是该cron应该为特定用户运行,我就有了用户方面的设置 我在谷歌上搜索过,但找不到任何解决方案 欢迎提供任何参考或建议。在Laravel中,将逻辑放在cron中是不好的做法。为此使用命令和调度程序。这个问题很常见,但另一个简单的方法是过滤哪些用户需要在命令中更新 class UpdateStocks extends Command { protected $signature = 'update:
欢迎提供任何参考或建议。在Laravel中,将逻辑放在cron中是不好的做法。为此使用命令和调度程序。这个问题很常见,但另一个简单的方法是过滤哪些用户需要在命令中更新
class UpdateStocks extends Command
{
protected $signature = 'update:stocks';
public function handle()
{
User::where('update_stock', 'Yes')->get()->each(function(User $user) {
// run logic to update the stock
})
}
将命令放入调度程序中
$schedule->call(new UpdateStocks)->daily();
用带有maybe?设置的if语句将代码包装在cron中,谢谢@martin。我会尝试这个解决方案如果有什么阻碍你的话,我相信我能帮你找到解决方案。当然。这非常有用我可以使用下面的调度程序命令-->受保护的函数调度(调度$schedule){$schedule->command('update:stocks')->daily();}