В CakPHP 3.6.0 Консольные команды были добавлены для замены оболочек и задач на длительный срок.
В настоящее время я разрабатываю команду cronjob для выполнения других команд в разные промежутки времени. Поэтому я хочу запустить команду из класса Command следующим образом:
namespace App\Command;
// ...
class CronjobCommand extends Command
{
public function execute(Arguments $args, ConsoleIo $io)
{
// Run other command
}
}
Для оболочек / задач можно использовать Cake\Console\ShellDispatcher
:
$shell = new ShellDispatcher();
$output = $shell->run(['cake', $task]);
но это не работает для команд. Поскольку я не нашел никакой информации в документации, есть идеи, как решить эту проблему?