我一直面临着"类未找到"错误的很多问题。但最近我发现了最初的问题。我之前关于这个问题的两个问题:-
编者给出错误,"类未找到"
PHP Composer PSR-4自动加载和子命名空间,类未找到
我对具有扩展class.php
的类感兴趣,例如parent.class.php
和child.class.php
。但是composer似乎无法识别这些文件,并且显示"Class Not Found"错误。如果我使用简单的。php扩展(child.php
和parent.php
),问题就解决了。
我想知道是否有可能使作曲家工作与.class.php
扩展为我的php类文件?
如果你想让你的代码符合PSR-4,那么你必须有classname.php
格式的文件名。
来自PSR-4规范:
终止类名对应于以.php结尾的文件名。文件名必须与终止类名的大小写匹配。
(http://www.php-fig.org/psr/psr-4/)
所以,如果你坚持PSR-4,那么答案是,你不能使用你的.class.php
文件名。修改一下文件名,问题就解决了。
如果你出于某种原因必须保留现有的文件名,那么你需要通过编写自己的自动加载函数来解决这个问题,或者只是用传统的方式手动包含它们。(但请记住,如果这样做,您将不符合PSR-4)