Laravel在x小时分钟后延迟队列作业调度

问题描述 投票:0回答:1

我把我的laravel时区设置为'亚洲/加尔各答',这是格林尼治标准时间之前的5:30。当我派遣工作时,工作在5:30小时调度后开始,因为所有客户都来自同一时区。此外,它将在5:30提供。就像当我将其设置为当前时间为3:30的4:30开始时,工作延迟时间为5:30,从10:00开始。

我试过设置Linux,laravel timezone,php artisan config:cache,仍然需要提前5:30。

我的代码:

$diff = strtotime($start_time) - strtotime($current_datetime);
        $job_delay_hour = date("H", $diff);
        $job_delay_minute = date("i", $diff);
        $job_delay_second = date("s", $diff);

$job_id = $this->dispatch(($job)
            ->onQueue('splitter')
            ->delay(now()->addHour($job_delay_hour)->addMinutes($job_delay_minute)->addSeconds($job_delay_second)));
php laravel php-carbon
1个回答
0
投票

固定它

$job_id = $this->dispatch(($job)
        ->onQueue('splitter')->delay($diff);
© www.soinside.com 2019 - 2024. All rights reserved.