我在 PHP 项目中使用 Doctrine ORM,并运行以下命令来验证我的架构:
php 供应商/bin/doctrine orm:validate-schema
运行命令后,我收到一条警告:
[Warning] The use of this script is discouraged. See [https://www.doctrine-project.org/projects/doctrine-orm/en/current/reference/tools.html#doctrine-console](https://www.doctrine-project.org/projects/doctrine-orm/en/current/reference/tools.html#doctrine-console) for instructions on bootstrapping the console runner.
我尝试运行的任何 Doctrine 命令都会发生这种情况,而不仅仅是 orm:validate-schema。
我已经检查了 Doctrine 文档,但找不到关于为什么显示此警告或建议的最佳实践是什么的明确信息。
为什么不鼓励使用此脚本以及建议的替代方案是什么?
不鼓励使用脚本
/vendor/bin/doctrine
,因为它是由 Composer 生成的,并且您对该脚本的所有更改(例如添加自定义命令)可能会被 composer update
覆盖,或者可能被排除在版本控制之外(如 /vendor
目录通常是)。
最佳实践是添加您自己的
doctrine
脚本(例如在 /bin/
内)并使其可执行。然后警告就会消失。