我想知道在使用Composer时处理脚本配置文件的最佳做法是什么。
详细说明,如果我有一个具有多个选项或设置的脚本,我通常只是将它们作为变量或常量添加到config.php
文件或类似的东西中,然后要求文件我的脚本。或者,如果脚本是一个简单的类,那么只需使用类属性......基本的东西,对吗?
所以,我的问题是,随着PSR-4,自动加载,Composer等的出现,这样做的首选方式是什么?
要求用户直接编辑vendor /中的文件是错误的(例如:编辑配置文件或类中的属性等)。另外,这些修改不会被更新覆盖吗?
我想在我的脚本中使用defined()
来查找某些常量,用户可以在自己的配置文件中设置这些常量。这可能适用于较小的项目,但可能会变得繁琐且难以扩展。对于某些脚本,如果用户没有定义常量,也可能很难提出合理的默认值。
我还考虑过使用Composer的一个“钩子”来触发一个脚本,该脚本将配置文件移动到某个地方,比如项目的根目录。但后来我讨厌在用户的项目中删除一个随机配置文件......
我是否过度思考这个?你们通常如何处理这种情况?
答案 0 :(得分:0)
没有配置文件。让包含项目的代码在运行时设置配置值。
如果您在面向对象的php中工作,您可能需要将任何必需的配置参数作为构造函数或工厂方法的参数,并为可选参数或存在合理默认值的参数提供setter方法。