Laravel Artisan 常见命令详解
Laravel Artisan 常见命令详解
Laravel 是一个优秀的 PHP 框架,而 Artisan 是 Laravel 提供的强大命令行工具。通过 Artisan,开发者可以轻松完成许多开发任务,比如生成代码、管理数据库迁移、运行队列等。本文将带你深入了解 Artisan 的原理和常见命令,帮助你高效地使用这个工具。
Artisan 是 Laravel 自带的命令行接口(CLI),它基于 Symfony Cole 组件构建,允许开发者使用简单的命令执行复杂的任务。Artisan 的设计理念是通过命令简化常见的开发操作,减少手工编写代码的重复性。
在 Laravel 项目中,artisan
脚本位于根目录下,你可以通过运行以下命令查看所有可用的 Artisan 命令:
php artisan list
运行该命令后,你会看到一组分门别类的命令列表,每个命令都附带简短的描述。
Artisan 的核心基于 Symfony Cole。它将每个命令视为一个类,并注册到命令调度器中。以下是 Artisan 的基本工作流程:
- 解析输入命令:接收用户在终端输入的命令和参数。
- 匹配注册命令:根据用户输入的命令名称,匹配对应的命令类。
- 执行命令逻辑:调用匹配命令类中的逻辑,完成对应的功能。
每个 Artisan 命令本质上是一个类,它继承自 Illuminate\Cole\Command
。通过重写其 handle
方法,可以实现自定义的命令逻辑。
1. 配置和帮助命令
php artisan help
显示指定命令的帮助信息。例如:
代码语言:bash复制php artisan help make:controller
该命令将显示 make:controller
的使用方法和可选参数。
php artisan list
列出所有可用的 Artisan 命令。
2. 项目基本信息命令
php artisan --version
显示当前 Laravel 框架的版本号。
php artisan env
显示当前应用的环境(例如 local
、production
)。
. 路由相关命令
php artisan route:list
显示应用中注册的所有路由信息,包括方法、URI、名称和中间件等。可以使用 --compact
参数以精简格式显示:
php artisan route:list --compact
还可以过滤结果,例如根据路由方法:
代码语言:bash复制php artisan route:list --method=GET
4. 数据库相关命令
php artisan migrate
运行数据库迁移文件并更新数据库结构。
可以使用以下选项:
--force
:在生产环境中强制执行迁移。--path
:指定迁移文件路径。
php artisan db:seed
运行数据库种子文件以填充测试数据。可以指定单个 Seeder:
代码语言:bash复制php artisan db:seed --class=UserSeeder
php artisan migrate:rollback
回滚最近一次执行的迁移:
代码语言:bash复制php artisan migrate:rollback
可以使用 --step
参数回滚指定步数:
php artisan migrate:rollback --step=2
5. 文件生成命令
php artisan make:controller
生成新的控制器文件:
代码语言:bash复制php artisan make:controller UserController
常用选项:
--model
:生成控制器并绑定指定模型。--resource
:生成资源控制器,包含 RESTful 方法。
php artisan make:model
生成新的模型文件:
代码语言:bash复制php artisan make:model User
常用选项:
-m
:同时生成迁移文件。-c
:同时生成控制器文件。-f
:同时生成工厂文件。
php artisan make:migration
创建迁移文件:
代码语言:bash复制php artisan make:migration create_users_table
还可以指定表名:
代码语言:bash复制php artisan make:migration add_email_to_users_table --table=users
6. 调试和测试命令
php artisan tinker
启动交互式命令行工具 Tinker,允许你测试代码片段或执行数据库查询:
代码语言:bash复制php artisan tinker
在 Tinker 中,你可以运行 Eloquent 查询:
代码语言:php复制App\Models\User::all();
php artisan test
运行 PHPUnit 测试:
代码语言:bash复制php artisan test
可以指定单个测试文件:
代码语言:bash复制php artisan test --filter=UserTest
7. 缓存管理命令
php artisan cache:clear
清除应用缓存:
代码语言:bash复制php artisan cache:clear
php artisan config:cache
生成配置文件缓存,提高性能:
代码语言:bash复制php artisan config:cache
生成后若配置文件有更改,需要先清除缓存再重新生成:
代码语言:bash复制php artisan config:clear
php artisan config:cache
php artisan route:cache
生成路由缓存:
代码语言:bash复制php artisan route:cache
同样,修改路由后需清除缓存再重新生成:
代码语言:bash复制php artisan route:clear
php artisan route:cache
如果默认的命令无法满足需求,可以通过 Artisan 创建自定义命令。
创建自定义命令
使用以下命令创建自定义命令类:
代码语言:bash复制php artisan make:command MyCustomCommand
这会在 app/Cole/Commands
目录下生成一个命令类文件。打开生成的类,你会看到以下结构:
namespace App\Cole\Commands;
use Illuminate\Cole\Command;
class MyCustomCommand extends Command
{
protected $signature = 'command:name';
protected $description = 'Command description';
public function __ctruct()
{
parent::__ctruct();
}
public function handle()
{
// 命令逻辑
}
}
注册自定义命令
将命令类注册到 app/Cole/Kernel.php
文件的 $commands
属性中:
protected $commands = [
\App\Cole\Commands\MyCustomCommand::class,
];
执行自定义命令
在终端运行:
代码语言:bash复制php artisan command:name
Laravel 的 Artisan 工具为开发者提供了强大的功能,从项目管理到代码生成再到数据库操作,几乎覆盖了开发过程中的方方面面。通过熟练掌握常用命令和自定义命令,你可以大幅提升开发效率。希望本文能够帮助你更好地理解和使用 Artisan!
#感谢您对电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格的认可,转载请说明来源于"电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格
推荐阅读
留言与评论(共有 19 条评论) |
本站网友 重庆肛肠医院 | 11分钟前 发表 |
匹配注册命令:根据用户输入的命令名称 | |
本站网友 黄金专家 | 14分钟前 发表 |
什么是 Artisan?Artisan 是 Laravel 自带的命令行接口(CLI) | |
本站网友 我不是女生 | 3分钟前 发表 |
以下是 Artisan 的基本工作流程:解析输入命令:接收用户在终端输入的命令和参数 | |
本站网友 关婷娜的胸 | 19分钟前 发表 |
每个 Artisan 命令本质上是一个类 | |
本站网友 京溪租房 | 1分钟前 发表 |
它将每个命令视为一个类 | |
本站网友 救助基金 | 25分钟前 发表 |
可以使用以下选项:--force:在生产环境中强制执行迁移 | |
本站网友 风一更雪一更 | 17分钟前 发表 |
];执行自定义命令在终端运行:代码语言:bash复制php artisan command | |
本站网友 海德公园图片 | 24分钟前 发表 |
在 Laravel 项目中 | |
本站网友 客车起火 | 13分钟前 发表 |
你可以通过运行以下命令查看所有可用的 Artisan 命令:代码语言:bash复制php artisan list运行该命令后 | |
本站网友 又又酱 | 11分钟前 发表 |
创建自定义命令使用以下命令创建自定义命令类:代码语言:bash复制php artisan make | |
本站网友 定时提醒软件 | 16分钟前 发表 |
管理数据库迁移 | |
本站网友 上海东方城市花园 | 20分钟前 发表 |
常见的 Artisan 命令1. 配置和帮助命令php artisan help显示指定命令的帮助信息 | |
本站网友 广州羽毛球 | 16分钟前 发表 |
创建自定义命令使用以下命令创建自定义命令类:代码语言:bash复制php artisan make | |
本站网友 规费 | 29分钟前 发表 |
并注册到命令调度器中 | |
本站网友 洗浴中心按摩小姐 | 22分钟前 发表 |
controller该命令将显示 make | |
本站网友 抗疫建设者 | 3分钟前 发表 |
rollback回滚最近一次执行的迁移:代码语言:bash复制php artisan migrate | |
本站网友 华京购物网 | 27分钟前 发表 |
每个 Artisan 命令本质上是一个类 | |
本站网友 微信公众平台客户端 | 8分钟前 发表 |
修改路由后需清除缓存再重新生成:代码语言:bash复制php artisan route |