0 پاسخ

کامند در cron job

سلام دوستان عزیز

من از طریق سی پنل (هاست اشتراکی) دستور کران جاب رو اجرا میکنم و یک دیتایی رو در پایگاه داده ذخیره میکنم

مشکل من اینکه دستور زیر رو میزنم

php /home/username/public_html/artisan schedule:run >> /dev/null 2>&1 

و در صورتی که تابع زمان بندی بصورت زیر باشد (یعنی کد ذخیره اطلاعات در تابع بصورت مستقیم بکار رود)

    protected function schedule(Schedule $schedule)
    {
        Useless::create(['data' => mt_rand(0000000 , 9999999)]);
    }

عملیات کرون جاب بصورت کامل انجام میشه و سر زمان مشخص شده ، ذخیره سازی انجام میشود.

حالا اگر دستور زیر رو هم وارد کنم (یعنی امضای command رو هم مستقیم صدا بزنم)

php /home/username/public_html/artisan word:day >> /dev/null 2>&1

و این کد ذخیره سازی در تابع handel در کلاس command رو بازم مستقیم صدا بزنم کد کار میکنه :

    public function handle()
    {
     return Useless::create(['data' => mt_rand(0000000 , 9999999)]); 
    }

اما اگر command رو در تابع schedule فراخوانی کنم کد کار نمیکنه :

<?php namespace App\Console;

use Illuminate\Console\Scheduling\Schedule;
use Illuminate\Foundation\Console\Kernel as ConsoleKernel;

class Kernel extends ConsoleKernel
{
    /**
     * The Artisan commands provided by your application.
     *
     * @var array
     */
    protected $commands = [
        Commands\WordOfTheDay::class,
    ];

    /**
     * Define the application's command schedule.
     *
     * @param Schedule $schedule
     * @return void
     */
    protected function schedule(Schedule $schedule)
    {
        $schedule->command('word:day')->everyMinute();
    }

    /**
     * Register the commands for the application.
     *
     * @return void
     */
    protected function commands()
    {
        $this->load(__DIR__.'/Commands');

        require base_path('routes/console.php');
    }
}

واقعا برام سواله و هیچ جا جوابی براش پیدا نکردم !!! چرا باید به دو صورت اول کار کنه اما زمانی که command رو در تابع schedule صدا میزنیم کار نمیکنه

Laravel Framework 7.28.4
php 7.4.3

@hesammousavi


ثبت پرسش جدید

به همدیگه کمک کنیم

به سید سروش ساری زاده کمک کنید تا مشکل خودش را حل کند؛ این‌طور می‌توانیم با هم پیشرفت کنیم.

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام