@php和@composer是Composer提供的快捷别名,用于确保脚本在一致环境中执行;@php调用当前PHP解释器运行脚本,如”@php vendor/bin/phpunit”;@composer重新调用Composer自身命令,如”post-install-cmd”: [“@composer dump-autoload –optimize”],常用于自动化流程中提升兼容性与维护性。

在使用 Composer 的 run-script 命令时,你可能会在 composer.json 中看到类似 @php 或 @composer 的写法。这些是 Composer 提供的快捷别名,用于简化脚本定义和执行流程。
@php:调用 PHP 可执行文件
@php 是一个内置别名,指向当前系统中用于运行 Composer 的 PHP 解释器。使用它能确保脚本在与 Composer 相同的 PHP 环境下执行,避免因环境不一致导致的问题。
用途示例:
运行本地 PHP 脚本,如迁移、测试或自定义命令 确保使用正确的 PHP 版本(尤其是多版本 PHP 环境)
配置示例:
立即学习“PHP免费学习笔记(深入)”;
{ "scripts": { "test": "@php vendor/bin/phpunit" }}
这行配置表示运行 test 脚本时,Composer 会自动调用它自己使用的 PHP 来执行 vendor/bin/phpunit。
@composer:重新调用 Composer 命令
@composer 是另一个内置别名,代表调用当前 Composer 实例本身。它等价于运行 composer 命令,但更安全,因为它明确使用启动当前脚本的 Composer 可执行文件。
用途示例:
在脚本中触发其他 Composer 脚本或命令 组合多个 Composer 操作,比如安装后自动执行优化
配置示例:
立即学习“PHP免费学习笔记(深入)”;
{ "scripts": { "post-install-cmd": [ "@composer dump-autoload --optimize" ] }}
这样可以在每次安装依赖后,自动优化自动加载性能。
常见使用场景
这两个别名通常出现在 scripts 字段中,用于构建可维护、环境一致的自动化流程。
开发脚本:如 "serve": "@php -S localhost:8000 -t public" 构建流程:在 CI 中通过 @composer install --no-dev 控制依赖 钩子脚本:在 post-update-cmd 中运行代码检查或缓存清理
基本上就这些。@php 和 @composer 是 Composer 提供的便利机制,让脚本更清晰、更可靠,同时避免硬编码命令路径带来的兼容性问题。合理使用它们,可以提升项目的自动化质量。
以上就是composer run-script中的@php和@composer是什么_解析@php和@composer在run-script中的用法的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/119780.html
微信扫一扫
支付宝扫一扫