autoload-dev用于定义开发环境下的自动加载规则,如测试类、辅助函数等,仅在开发时生效。示例中将tests/目录和helpers.php加入自动加载,配合phpunit等工具使用,生产环境通过–no-dev避免加载,确保不影响线上代码。
autoload-dev 是 Composer 中用于定义开发环境下自动加载规则的配置项。它和 autoload 的作用类似,但只在开发时生效,比如运行测试、静态分析工具或生成文档时使用。
用途说明
某些类或文件只在开发阶段需要自动加载,比如 PHPUnit 测试用例、PHPStan 分析配置、Seeder 类或开发辅助脚本。这些代码不会出现在生产环境,所以不应该包含在正式的自动加载中。
通过 autoload-dev,你可以把测试目录(如 tests/)里的类加入自动加载,这样写单元测试时可以直接使用,而不会影响线上代码结构。
常见使用场景
• 自动加载测试类(例如 tests/ 下的 TestCase)
• 包含开发专用的帮助函数文件(如 helpers.php)
• 为命令行工具或脚本提供类自动加载支持
• 配合 phpunit、psysh、laravel dusk 等开发工具使用
配置示例
立即进入“豆包AI人工智官网入口”;
立即学习“豆包AI人工智能在线问答入口”;
{ "autoload": { "psr-4": { "app": "src/" } }, "autoload-dev": { "psr-4": { "Tests": "tests/" }, "files": [ "src/helpers.php" ] } }
执行 composer dump-autoload
后,Composer 会生成对应的自动加载映射。开发依赖相关的自动加载仅在本地存在。
注意事项
生产环境部署时通常运行 composer install --no-dev
,此时 dev 依赖被跳过,autoload-dev 的内容也不会被加载。因此不要把核心业务逻辑放在开发自动加载路径中。
基本上就这些。不复杂但容易忽略。
以上就是php laravel js json composer app 工具 开发环境 php laravel composer json