- Laravel 教程
- Laravel - 主页
- Laravel - 概述
- Laravel - 安装
- Laravel - 应用程序结构
- Laravel - 配置
- Laravel - 路由
- Laravel - 中间件
- Laravel - 命名空间
- Laravel - 控制器
- Laravel - 请求
- Laravel-Cookie
- Laravel - 响应
- Laravel - 视图
- Laravel - 刀片模板
- Laravel - 重定向
- Laravel - 使用数据库
- Laravel - 错误和日志记录
- Laravel - 表单
- Laravel - 本地化
- Laravel - 会话
- Laravel - 验证
- Laravel - 文件上传
- Laravel - 发送电子邮件
- Laravel - AJAX
- Laravel - 错误处理
- Laravel - 事件处理
- Laravel - 外观
- Laravel - 合约
- Laravel - CSRF 保护
- Laravel - 身份验证
- Laravel - 授权
- Laravel - Artisan 控制台
- Laravel - 加密
- Laravel - 哈希
- 了解发布流程
- Laravel - 访客用户门
- Laravel - Artisan 命令
- Laravel - 分页自定义
- Laravel - 转储服务器
- Laravel - 操作 URL
- Laravel 有用资源
- Laravel - 快速指南
- Laravel - 有用的资源
- Laravel - 讨论
Laravel - Artisan 控制台
Laravel 框架提供了三种主要的命令行交互工具,即:Artisan、Ticker和REPL。本章详细介绍了 Artisan。
工匠简介
Artisan 是 Laravel 中经常使用的命令行界面,它包含一组用于开发 Web 应用程序的有用命令。
例子
以下是 Artisan 中的几个命令及其各自的功能的列表 -
启动 Laravel 项目
php artisan serve
启用缓存机制
php artisan route:cache
查看 Artisan 支持的可用命令列表
php artisan list
查看有关任何命令的帮助并查看可用选项和参数
php artisan help serve
以下屏幕截图显示了上面给出的命令的输出 -
编写命令
除了 Artisan 中列出的命令之外,用户还可以创建可在 Web 应用程序中使用的自定义命令。请注意,命令存储在app/console/commands 目录中。
创建用户定义命令的默认命令如下所示 -
php artisan make:console <name-of-command>
输入上述命令后,您可以看到输出,如下面的屏幕截图所示 -
为DefaultCommand创建的文件名为DefaultCommand.php,如下所示 -
<?php
namespace App\Console\Commands;
use Illuminate\Console\Command;
class DefaultCommand extends Command{
/**
* The name and signature of the console command.
*
* @var string
*/
protected $signature = 'command:name';
/**
* The console command description.
*
* @var string
*/
protected $description = 'Command description';
/**
* Create a new command instance.
*
* @return void
*/
public function __construct() {
parent::__construct();
}
/**
* Execute the console command.
*
* @return mixed
*/
public function handle() {
//
}
}
该文件包含用户定义的命令的签名和描述。名为handle的公共函数在执行命令时执行功能。这些命令注册在同一目录下的Kernel.php文件中。
您还可以为用户定义的命令创建任务计划,如以下代码所示 -
<?php
namespace App\Console;
use Illuminate\Console\Scheduling\Schedule;
use Illuminate\Foundation\Console\Kernel as ConsoleKernel;
class Kernel extends ConsoleKernel {
/**
* The Artisan commands provided by your application.
*
* @var array
*/
protected $commands = [
// Commands\Inspire::class,
Commands\DefaultCommand::class
];
/**
* Define the application's command schedule.
*
* @param \Illuminate\Console\Scheduling\Schedule $schedule
* @return void
*/
protected function schedule(Schedule $schedule) {
// $schedule->command('inspire')
// ->hourly();
}
}
请注意,给定命令的任务计划是在名为Schedule 的函数中定义的,其中包含一个用于计划任务的参数,该参数采用每小时参数。
命令注册在命令数组中,其中包括命令的路径和名称。
命令注册后,就会在 Artisan 命令中列出。当您调用指定命令的帮助属性时,将显示签名和描述部分中包含的值。
让我们看看如何查看命令DefaultCommand的属性。您应该使用如下所示的命令 -
php artisan help DefaultCommand