webman-tech/laravel-console 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

webman-tech/laravel-console

最新稳定版本:v12.0.13

Composer 安装命令:

composer require webman-tech/laravel-console

包简介

Webman plugin webman-tech/laravel-console

README 文档

README

Split from webman-tech/laravel-monorepo

适用于 webman 的 Laravel 控制台组件,基于 illuminate/console 实现。

安装

composer require webman-tech/laravel-console

如果需要同时使用 webman/console 的命令,还需要安装:

composer require webman/console

简介

该组件将 Laravel 强大的 Artisan 命令行功能引入 webman 框架中,使开发者能够使用 Laravel 的命令行语法创建和管理命令。

所有方法和配置与 Laravel 几乎一致,因此使用方式可完全参考 Laravel Artisan 文档

特殊使用说明

1. 为什么会有这个扩展

相比于官方的 webman/console

  1. 基于 illuminate/console,使用更方便
  2. 给用惯了 Laravel 的人一个熟悉的环境
  3. 支持第三方 Laravel 包的命令直接使用
  4. 支持 illuminate/database 的 Migration 相关功能

2. Facades 使用方式

使用 WebmanTech\LaravelConsole\Facades\Artisan 替代 Laravel 的 Artisan Facade:

use WebmanTech\LaravelConsole\Facades\Artisan;

// 调用命令
Artisan::call('mail:send', [
    'userId' => 123
]);

3. 命令扫描配置

默认自动扫描 app\command 下的命令。

配置文件:config/plugin/webman-tech/laravel-console/artisan.php

return [
    // 自定义命令扫描路径
    'commands_path' => [
        app_path() . '/MyCommands' => 'app\MyCommands',
    ],
    
    // 直接注册命令类
    'commands' => [
        \App\Commands\MyCommand::class,
    ],
];

4. 创建命令

namespace app\command;
 
use Illuminate\Console\Command;
 
class SendEmails extends Command
{
    protected $signature = 'mail:send {userId}';
 
    protected $description = 'Send a marketing email to a user';
 
    public function handle(): void
    {
        // 处理逻辑
    }
}

5. 调用命令

命令行调用:

php artisan mail:send 1

业务中调用:

use WebmanTech\LaravelConsole\Facades\Artisan;

Artisan::call('mail:send', ['userId' => 1]);

注意事项

当使用 db:seed 报错 "Target class [Database\Seeders\Xxxx] does not exist" 时

解决办法:主动在 composer.json 中添加 psr-4 的配置,详见 issue-9

统计信息

  • 总下载量: 873
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 5
  • 点击次数: 2
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 5
  • Watchers: 2
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2023-04-25

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固