Artisan命令核心约40–50个,高频使用不足20个;关键在make:等子命令组合(如make:controller、make:model)及config:clear、view:clear等缓存清理命令。

artisan 命令多不多?其实核心就几十个,但可组合性极强
Laravel 的 php artisan 命令本身不算“多”,官方文档列出的内置命令约 40–50 个(v10.x),真正高频使用的不到 20 个。关键在于:很多命令支持子命令、选项和参数组合,比如 php artisan make: 下有 make:controller、make:model、make:migration 等十几种子命令,容易让人误以为“命令爆炸式增长”。
哪些 artisan 命令你几乎每天都要用
以下是最常触发的实际开发场景,按使用频率排序:
-
php artisan serve:本地启动开发服务器(默认http://127.0.0.1:8000),注意它不适用于生产环境,且不自动重载视图变更 -
php artisan make:controller:生成控制器,加--invokable或--resource可快速创建单动作或资源型控制器 -
php artisan make:model:生成模型,常用搭配-m(同时建迁移)、-f(加工厂)、-a(全配套:迁移+工厂+迁移桩+填充器) -
php artisan migrate:运行未执行的迁移。上线前务必先php artisan migrate:status查看当前状态,避免漏跑或重复执行 -
php artisan tinker:进入交互式 PHP shell,调试模型、查询构造器、测试集合操作非常高效;退出用exit或Ctrl+D -
php artisan route:list:查看所有注册路由,加--method=POST或--name=api.users.index可过滤,对调试 404 或中间件失效极有用
容易被忽略但关键时刻救命的命令
这些命令不常打,但一旦遇到对应问题,能省掉大量手动排查时间:
-
php artisan config:clear和php artisan config:cache:修改了.env或配置文件后,缓存未更新会导致值“不生效”。开发时建议只清缓存(config:clear),生产才用config:cache -
php artisan view:clear:Blade 模板修改后页面没变化?大概率是 view 缓存没清,尤其在APP_DEBUG=false时必现 -
php artisan storage:link:让public/storage指向storage/app/public,否则用户上传的公开文件无法通过 URL 访问(如/storage/avatar.jpg) -
php artisan optimize:clear(v9+ 已整合进optimize:clear):一键清掉配置、路由、视图、服务提供者等全部缓存,比逐个执行更快捷
自定义命令和第三方包命令怎么查
Laravel 允许注册自定义 Artisan 命令,也支持包自带命令(如 laravel/sanctum 提供 sanctum:install)。不确定某个命令是否存在,最直接的方式是:
php artisan list
它会输出所有可用命令(含描述),支持管道搜索:
MixPHP 是一个 PHP 命令行模式开发框架;基于 Vega 驱动的 HTTP 可以同时支持 Swoole、WorkerMan、FPM、CLI-Server 生态,并且可以无缝切换;V3 是一个高度解耦的版本,整体代码基于多个独立的模块构建,即便用户不使用我们的脚手架,也可以使用这些独立模块,并且全部模块都支持原生开发。例如:你可以只使用 mix/vega 来搭配 laravel orm 使用
php artisan list | grep "make"
或者用模糊匹配:
php artisan help make
注意:第三方命令是否可用,取决于包是否已正确安装并注册了 commands 配置项,部分包还需运行 php artisan vendor:publish 才能暴露命令。
复杂点在于命令行为受 Laravel 版本、PHP 版本、缓存状态、环境变量三重影响——同一个 php artisan migrate,在 .env 配错数据库密码时报 PDOException,在缓存未清时可能读到旧的迁移记录,调试时得一层层排除。








