喜讯!TCMS 官网正式上线!一站式提供企业级定制研发、App 小程序开发、AI 与区块链等全栈软件服务,助力多行业数智转型,欢迎致电:13888011868 QQ 932256355 洽谈合作!
artisan 命令覆盖了 Laravel 开发的全流程,熟练使用可大幅提高效率。实际开发中,常用命令(如 make:controller 、 migrate 、 serve 、 tinker )需重点掌握,其他命令可通过 help 随时查询用法。

是 Laravel 框架的命令行工具,提供了大量实用命令,用于简化开发流程(如生成代码、数据库操作、服务器运行等)。以下是 Laravel 中常用 artisan 命令的详细说明,按功能分类整理:
php artisan list列出所有可用的 artisan 命令,包括核心命令和自定义命令。
可添加 -v (详细)或按模块筛选(如 php artisan list make 查看 make 相关命令)。
php artisan help [命令名]示例: php artisan help make:controller
显示指定命令的参数、选项及用法说明。
php artisan --version
# 或简写
php artisan -Vphp artisan key:generate生成 .env 文件中的 APP_KEY (用于加密会话、Cookie 等),新安装项目必须执行。
选项: --show 仅显示密钥不写入文件; --force 强制覆盖现有密钥。
php artisan config:cache将所有配置文件合并为单个缓存文件( bootstrap/cache/config.php ),提升加载速度。
注意 :配置修改后需重新执行此命令,否则不会生效。
php artisan config:clear删除配置缓存文件,恢复动态加载配置文件。
php artisan route:cache缓存路由定义(适合生产环境,提升路由解析速度),仅支持 非闭包路由 (路由需定义在控制器中)。
php artisan route:clearmake 系列命令)用于快速生成控制器、模型、迁移文件等核心组件,避免重复编写基础代码。
php artisan make:controller [控制器名]示例: php artisan make:controller UserController
选项:
--resource :生成资源控制器(包含 CRUD 方法:index、create、store 等)。
--model=ModelName :关联模型(生成带模型参数的方法)。
--invokable :生成仅含 __invoke 方法的单动作控制器。
php artisan make:model [模型名]示例: php artisan make:model Post
选项:
--migration 或 -m :同时生成对应的数据表迁移文件。
--controller 或 -c :同时生成控制器。
--resource 或 -r :生成资源控制器(与 -c 结合使用)。
php artisan make:migration [迁移文件名]迁移文件用于定义数据库表结构,文件名需遵循规范(如 create_users_table )。
示例: php artisan make:migration add_email_verified_at_to_users_table
选项: --table=表名 指定要修改的表; --create=表名 生成创建新表的迁移。
php artisan make:middleware [中间件名]示例: php artisan make:middleware CheckAge
生成的中间件位于 app/Http/Middleware 目录,需手动注册到 app/Http/Kernel.php 中。
php artisan make:request [请求类名]示例: php artisan make:request StoreUserRequest
用于集中管理表单验证规则,生成在 app/Http/Requests 目录。
make 命令| 命令 | 说明 |
|---|---|
make:command | 生成自定义 Artisan 命令 |
make:component | 生成 Blade 组件 |
make:factory | 生成模型工厂(用于批量创建测试数据) |
make:policy | 生成权限策略类(配合模型授权) |
make:provider | 生成服务提供者 |
make:seeder | 生成数据库填充器(用于初始化测试数据) |
php artisan migrate运行所有未执行的迁移文件,创建或修改数据库表结构。
选项: --force 强制在生产环境执行(默认禁止)。
php artisan migrate:rollback回滚最后一次迁移操作(可通过 --step=N 回滚最近 N 次)。
php artisan migrate:reset回滚所有已执行的迁移(从最新到最早)。
php artisan migrate:fresh先删除所有表(比 reset 更彻底),再重新执行所有迁移,适合开发环境重置数据。
php artisan db:seed执行数据库填充器( database/seeders 目录下的类),用于插入测试数据。
选项: --class=SeederName 指定单个填充器执行(如 --class=UserSeeder )。
php artisan db:check检查数据库连接是否正常(Laravel 8+ 支持)。
php artisan serve启动 PHP 内置开发服务器,默认地址: http://localhost:8000 。
选项: --host=域名 自定义主机; --port=端口 自定义端口(如 --port=8080 )。
php artisan route:list显示所有注册的路由信息(方法、URI、控制器、中间件等)。
选项: --name=关键词 按路由名筛选; --path=URI 按 URI 筛选。
php artisan view:clear删除编译后的 Blade 视图缓存( storage/framework/views 目录),修改视图后若未生效可执行。
php artisan log:clear清空 storage/logs 目录下的日志文件。
php artisan tinker启动交互式 PHP 终端,可直接执行 Laravel 代码(如模型查询、服务调用等),方便调试。
示例: User::first() 查看第一个用户; App\Models\Post::create(['title' => 'Test'] 创建文章。
php artisan optimize生成类映射缓存和路由缓存(相当于同时执行 config:cache 、 route:cache 、 clear-compiled ),提升生产环境性能。
php artisan optimize:clear一键清除配置、路由、视图、编译文件等所有缓存(开发/生产环境通用)。
# 开启维护模式(显示 503 页面)
php artisan down
# 关闭维护模式
php artisan up选项: down --message="维护中..." 自定义提示信息; --retry=60 告诉客户端 60 秒后重试。
你可以通过 make:command 创建自己的 Artisan 命令:
生成命令类: php artisan make:command SendEmails
在 app/Console/Commands/SendEmails.php 中定义 signature (命令名和参数)和 handle 方法(执行逻辑)。
注册命令:在 app/Console/Kernel.php 的 $commands 数组中添加命令类。
执行自定义命令: php artisan send:emails
artisan 命令覆盖了 Laravel 开发的全流程,熟练使用可大幅提高效率。实际开发中,常用命令(如 make:controller 、 migrate 、 serve 、 tinker )需重点掌握,其他命令可通过 help