У меня есть некоторые команды, которые запускаются с планировщиком, некоторые из них работают не так, как ожидалось, код отлично работает, если он помещен во внешний файл. но когда он запускался как команда с планировщиком, он ничего не делает, файлы не удаляются. & нет выхода из файла.Laravel 5.1 - Команды не работают, как ожидалось
Команда:
<?php
namespace App\Console\Commands;
use Illuminate\Console\Command;
use DirectoryIterator;
class CleanExports extends Command {
protected $name = 'clean:exports';
public function fire() {
$folderName = 'exports';
if (file_exists($folderName)) {
$i = 0;
foreach (new DirectoryIterator($folderName) as $fileInfo) {
if ($fileInfo->isDot()) {
continue;
}
if (time() - $fileInfo->getCTime() >= 1*24*60*60) {
unlink($fileInfo->getRealPath());
}
$i++;
}
echo $i.' files cleaned';
}
}
}
Kernel.php
<?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 = [
\App\Console\Commands\Inspire::class,
'\App\Console\Commands\CleanExports',
];
/**
* Define the application's command schedule.
*
* @param \Illuminate\Console\Scheduling\Schedule $schedule
* @return void
*/
protected function schedule(Schedule $schedule) {
$schedule->command('inspire')
->hourly();
$schedule->command('clean:exports')->everyMinute()->sendOutputTo('temp/errors.txt');
}
Что именно не работает? Не удаляет ли файлы? Более конкретно. – Andrew
Какой вид «планировщика» вы используете для своей работы? –
и эта строка в 'kernel.php'' \ App \ Console \ Commands \ CleanExports :: class' вместо этого' '\ App \ Console \ Commands \ CleanExports'' –