laravel 未列出自定义命令
laravel custom command not listed
我创建了一个名为 confirmUserCommand
的自定义命令,其文件名与 class 名称匹配(大小写相同)。 $name 设置为 confirmuser
.
运行 命令 php artisan list
在我的本地显示新命令,但不在服务器上(即 运行 linux)。我确实执行了 composer dump-autoload 并更新了相关的 composer 文件,但无济于事。
有什么建议吗?
刚刚弄乱了我的头发,发现了问题..
为了列出包括自定义命令在内的 artisan 命令,您必须调用系统 PHP CLI 解释器,特别是 PHP 调用。
php artisan list
:将按预期列出所有命令,但不会列出您创建的自定义命令
php-cli artisan list
:这将列出所有命令,包括创建的自定义命令
希望这对某人有所帮助并拯救他们的头发:)
Laravel 5.2~5.5:
创建命令并编辑
protected $signature = 'order:check'; //or whatever you want your command to be
您必须找到创建命令的位置并编辑 app\Console\kernel.php
文件。
在
下的这个文件中
protected $commands = [
\App\Console\Commands\OrderCheck::class,
]
运行 再一次
php artisan list
它应该列在那里:)
为了使其出现在 php artisan 列表中,您需要将其添加到 App/http/Kernel.php 文件中,特别是在命令数组中:
protected $commands = [
'App\Console\CreateSlugsCommand',....
];
执行此操作后,您可以 运行 在您的控制台 php artisan list
中,您将看到自定义命令。
从 laravel 版本 5.6 开始,您无需在 app\Console\kernel.php
中输入自定义命令
在 Laravel 的较新版本中,不再需要注册命令,只需确保控制台命令 class 名称与托管它的文件相同即可。
App/Console/Commands/MyCommand.php -> class 我的命令 ...
我创建了一个名为 confirmUserCommand
的自定义命令,其文件名与 class 名称匹配(大小写相同)。 $name 设置为 confirmuser
.
运行 命令 php artisan list
在我的本地显示新命令,但不在服务器上(即 运行 linux)。我确实执行了 composer dump-autoload 并更新了相关的 composer 文件,但无济于事。
有什么建议吗?
刚刚弄乱了我的头发,发现了问题..
为了列出包括自定义命令在内的 artisan 命令,您必须调用系统 PHP CLI 解释器,特别是 PHP 调用。
php artisan list
:将按预期列出所有命令,但不会列出您创建的自定义命令
php-cli artisan list
:这将列出所有命令,包括创建的自定义命令
希望这对某人有所帮助并拯救他们的头发:)
Laravel 5.2~5.5:
创建命令并编辑
protected $signature = 'order:check'; //or whatever you want your command to be
您必须找到创建命令的位置并编辑 app\Console\kernel.php
文件。
在
下的这个文件中protected $commands = [
\App\Console\Commands\OrderCheck::class,
]
运行 再一次
php artisan list
它应该列在那里:)
为了使其出现在 php artisan 列表中,您需要将其添加到 App/http/Kernel.php 文件中,特别是在命令数组中:
protected $commands = [
'App\Console\CreateSlugsCommand',....
];
执行此操作后,您可以 运行 在您的控制台 php artisan list
中,您将看到自定义命令。
从 laravel 版本 5.6 开始,您无需在 app\Console\kernel.php
在 Laravel 的较新版本中,不再需要注册命令,只需确保控制台命令 class 名称与托管它的文件相同即可。
App/Console/Commands/MyCommand.php -> class 我的命令 ...