【问题标题】:autoloading nested classes with composer使用 composer 自动加载嵌套类
【发布时间】:2015-09-08 03:18:13
【问题描述】:

我创建了一个非常基本的验证器类。

我的基本代码在我的 src/ 文件夹中,它通过

自动加载
"kevdotbadger\\Validator\\": "src/"

这很好用,所以当我实例化 new "kevdotbadger\Validator\ Validator 时会得到 src/Validator.php

然后我的 Validator.php 类在我的src/Rules 目录中加载了一堆子类。这些是通过使用__call 神奇地加载的,所以->between() 应该寻找src/Rules/between.php。但是,由于某种原因,尽管它是在我的 composer.json 文件中设置的,但它通常不会加载。

我的整个代码库可以在 https://github.com/kevdotbadger/validator/ 获得

我是否正确设置了我的命名空间?我认为问题可能出在 php 5.3 版上,但是我需要使用 5.3 版。

谢谢。

【问题讨论】:

    标签: php namespaces psr-0 psr-4


    【解决方案1】:

    在使用 psr-4 进行自动加载时,您需要遵守 psr-4 的准则。

    • 将文件夹名称“rules”更改为“Rules”
    • 大写所有类的文件名,例如:

       between.php  -->  Between.php
      

    应该做的工作

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-11-06
      • 2013-02-17
      • 2016-04-17
      • 2012-09-30
      • 1970-01-01
      • 2017-09-15
      • 1970-01-01
      相关资源
      最近更新 更多