php - 如何创建 laravel artisan 命令?

标签 php laravel-4 namespaces

我想创建命令 order:processorder:lock。到目前为止,我发现我需要运行 php artisan command:make process --namespace=order 来创建 order:process 类文件。然后我需要将 app/commands/process.php 中的 $name 值设置为“order:process”。这就是我被困住的地方。

我想我需要向 app/start/artisan.php 添加一些内容以使该命令可用,但我不知道是什么。我尝试过 Artisan::add(new order\process); 和 Artisan::add(new process); ,但这些都不起作用。我需要做什么才能让我的新命令可以从命令行运行?我知道问题与命名空间的使用有关,但我找不到任何有关使用命名空间的 artisan 命令的文档。

最佳答案

对于 Laravel 5.0

php artisan make:console Foo --command=foo:do

编辑位于 app/Console/Commands/Foo.php 中的命令

然后通过向 app/Console/Kernel.php 添加条目来注册您的命令

protected $commands = [
    'Cloudlite\Console\Commands\Inspire',
    'Cloudlite\Console\Commands\EmailParser',
    'Cloudlite\Console\Commands\Foo',
];

您现在可以像下面这样运行(示例默认选项,编辑 Foo.php)

php artisan foo:do example=1

关于php - 如何创建 laravel artisan 命令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22095164/

相关文章:

php - mysqli_fetch_assoc()需要参数/调用成员函数bind_param()错误。如何获取并修复实际的mysql错误?

PHP5-Mcrypt安装报错无安装候选

php - laravel 4 多数据库连接

clojure - 为什么Clojure中的 "use"会调用 "in-ns"返回原来的命名空间?

php - 是否可以在不提交表单的情况下将图像上传到服务器?

php - preg_replace 将 url 从相对更改为绝对

php - 从 mysql 字段获取总计

javascript - 从 PHP 返回 JS 源代码

android - 带命名空间的 Firebase 远程配置

namespaces - 关键字 acme 在 Hyperledger Composer 命名空间中意味着什么?