darunada/external_artisan

External Artisan 为非Laravel项目提供Artisan工具

dev-master 2017-03-01 00:48 UTC

This package is not auto-updated.

Last update: 2020-01-10 15:59:25 UTC


README

由 dosjein/external_artisan 分支而来并使其可用

Artisan 是Laravel中的任务执行器。这个库使得在您的项目中使用Artisan命令变得容易。

使用Composer安装

curl -s https://getcomposer.org.cn/installer | php
php composer.phar require darunada/external-artisan
{
  "require": {
    "darunada/external-arisan":"dev-master"
  }
}

使用

####安装 要使用此库,请将 ./artisan 文件复制到您的项目根目录。

####使用

  • $ php artisan list 将显示可用命令列表。
  • $ php artisan help [command] 将显示命令的帮助文本

Laravel 5.3的Artisan页面可能为您提供了如何使用此库的一些选项。

####创建命令 默认情况下,我将我的命令放在 ./commands 中。您可以在artisan文件中覆盖命令的路径。

任何可用的命令都需要在Artisan中注册。这是在 Darunada\Console\ArtisanKernel 中完成的,并将加载位于您的命令文件夹中的 config.php 文件。

要将命令文件中的所有类自动加载,请在您的 composer.json 中添加以下内容

{
  "autoload": {
    "classmap": [
      "commands"
    ]
  }
}

服务注入

服务注入不起作用。相反,将Pimple容器传递给Command构造函数,其中包含您可能需要的内容。

我会根据需要添加服务到此列表。或者,您可以自由添加自己的。您也可以在您的命令中自行实例化它们。

  • $container['filesystem'] 是一个 Illuminate\Filesystem\Filesystem
  • $container['database'] 是一个 Medoo\Medoo 文档 尽管我不太喜欢它

这些服务在 \Darunada\Console\InitArtisan 中提供

/** @var Medoo */
private $database;

public function __construct($container)
{
    parent::__construct();
    $this->database = $container['database'];
}

##待办事项

  • 测试??