我正在设置一个可安装作曲家的存储库。我阅读了Composer文档,并按照说明成功设置了我的存储库。我对require
和require-dev
之间区别的理解是require-dev
用于声明依赖关系,这对于存储库正常工作不是必需的。
但是,我在Github上看了一些库的composer.json,比如Zend Form和Respect Validation,并且在这两个存储库中,有些软件包需要这些存储库才能正常工作,列在require-dev
中。例如,egulias/email-validator
依赖关系列在require-dev
的Respect Validation中,但在this file上,需要此依赖关系才能使Email Validator正常工作。那么,为什么这种依赖关系没有列在require
?
zendframework/zend-captcha
也是如此,Captcha element的作用是必需的。
答案 0 :(得分:1)
此依赖关系是电子邮件验证程序工作所必需的。
不是。您可以看到Egulias\EmailValidator\EmailValidator
具有egulias/email-validator
的可选依赖项。如果提供了int add1(int &n){ // n is a reference variable
n++;
return n;
}
,那么该类将use it,否则它将回退到filter_var。该课程将以任何方式运作。包可以做的是suggest你要安装它。