如何在Laravel自定义Artisan命令的handle方法中调用助手类函数
Laravel自定义命令调用助手类实现方案
注意:
Function是PHP原生保留关键字,不能直接用作类名,我们先将助手类重命名为CustomHelper(建议同步将文件名改为CustomHelper.php,符合PSR-4自动加载规范,避免类找不到的问题)
- 1 调整助手类代码
修改app/Helper/CustomHelper.php代码如下:
<?php namespace App\Helper; class CustomHelper { static public function testCommand() { return "success"; } }
- 2 完善自定义命令类逻辑
在app/Console/Commands/TestCommand.php中引入助手类,补充handle方法的调用和输出逻辑:
<?php namespace App\Console\Commands; use Illuminate\Console\Command; use App\Helper\CustomHelper; // 引入自定义助手类 class TestCommand extends Command { protected $signature = 'test:command'; protected $description = 'Test Command'; public function __construct() { parent::__construct(); } public function handle() { // 调用助手类静态方法获取返回值 $result = CustomHelper::testCommand(); // 将结果输出到控制台 $this->info($result); // Laravel命令约定执行成功返回0,执行失败返回非0数值 return 0; } }
- 3 执行测试
在项目根目录运行命令:php artisan test:command
控制台会直接输出success,即为调用成功。
内容的提问来源于stack exchange,提问作者deskeay
相关产品推荐
相关产品推荐

