Планирование laravel не работает в Windows

Я работаю над планированием laravel, все работает нормально. Код моего расписания ниже:

public function handle()
{
    //
    $words = [
        'aberration' => 'a state or condition markedly different from the norm',
        'convivial' => 'occupied with or fond of the pleasures of good company',
        'diaphanous' => 'so thin as to transmit light',
        'elegy' => 'a mournful poem; a lament for the dead',
        'ostensible' => 'appearing as such but not necessarily so'
    ];
    $key = array_rand($words);
    $value = $words[$key];
    $word = new Word;
    $word->word_key = $key;
    $word->word_value = $value;
    $word->save();
    $this->info('Word of the Day saved in table');
}

protected function schedule(Schedule $schedule)
{
    $schedule->command('word:day')->everyMinute();
}

Теперь после этого я запускаю команду PHP artisan schedule: run, она сохраняет данные в таблице слов.

Теперь мой вопрос в том, что через одну минуту он снова не сохраняется ... Я исследовал в Google и пробовал много ссылок, он вообще не работает.

Мой проект находится на пути к диску E: E: / xammp / htdocs / testtutorials / phpmonitor, и я запускаю команду ниже, и она не работает

* * * * * php /path/to/artisan schedule:run >> /dev/null 2>&1
  ----------------------------------------------------------
* * * * * php /E:/xammp/htdocs/testtutorials/phpmonitor/artisan schedule:run >> /dev/null 2>&1

это дает мне ошибку ниже:

Система не может найти указанный путь.

введите описание изображения здесь


person user    schedule 03.10.2019    source источник


Ответы (1)


Приведенная выше команда является командой в стиле UNIX. Windows отличается в следующих аспектах:

  1. Пути не начинаются с /, они начинаются с буквы диска.
  2. Устройство /dev/null не существует. Эквивалент для Windows - nul.

Итак, измените вашу команду на следующую:

php E:\xampp\htdocs\testtutorials\phpmonitor\artisan schedule:run >nul 2>&1
person ooa    schedule 03.10.2019
comment
Кажется, команда работает нормально, но не сохраняет данные в базе данных через одну минуту? - person user; 03.10.2019
comment
это то же самое, что и расписание php artisan: запустить - person user; 03.10.2019
comment
его данные сохраняются только тогда, когда я запускаю команду, которую я хочу сохранить каждую минуту без запуска команды - person user; 03.10.2019
comment
Вы должны поместить указанную выше команду в планировщик задач (в Windows) или crontab (в UNIX-подобных системах), а не запускать ее вручную (хотя вы можете запустить ее вручную для проверки). Сама структура не будет обрабатывать повторяющиеся запуски за вас. - person ooa; 03.10.2019
comment
Так что насчет cpanel, я добавлю команду в раздел cron jobs в cpanel, чтобы после этого я нашел планировщик задач? действительно сбивает с толку, можешь уточнить? - person user; 03.10.2019