我正在尝试创建一个自定义库,特别是一个自定义验证器。我已经创建了以下文件
/vendor/tealbury/library/Tealbury/Validator/UsernameValidator.php
其中包含一个类别
class UsernameValidator extends ZendValidatorAbstractValidator { ... }
然后,我在composer.json 中添加了以下行
"autoload" : {
"psr-0" : {
"Tealbury" : "vendor/tealbury/library"
}
}
在我的模型中,我包含了类似的验证器
use TealburyValidatorUsernameValidator;
然而,当我尝试呼叫时
new UsernameValidator;
我收到以下
Fatal error: Class 'TealburyValidatorUsernameValidator' not found in /usr/local/zend/var/apps/http/__default__/0/1.0.0/module/Application/src/Application/Model/Join.php on line 58
我使用Zend Framework 2文档中的信息和这里提出的类似问题将其整合在一起。我是不是错过了什么?
问题在于composer.json中的autoload指令,不需要在名称空间名称上使用尾部斜杠。此外,请确保类的名称空间正确,namespace TealburyValidator
位于顶部。