Из того, что я вижу, вы правы, команды Laravel не предлагают геттер для подписей. В качестве альтернативы вы можете рассмотреть следующие обходные пути.
- Вы можете использовать
$name
в качестве подписи.
protected $name = 'app:do:something';
Я не уверен, является ли это обычной (или лучшей) практикой, но, похоже, это помогает.
- Если это не подходит вам, вы можете реализовать и расширить свой собственный
CommandWithSignature
(или SignatureAwareTrait
), который предоставляет метод getSignature()
.
public class CommandWithSignature {
protected $signature;
public function getSignature(): string
{
return $this->signature;
}
}