php命名空间类未找到错误

时间:2016-12-16 04:12:12

标签: php class

当我尝试使用自动加载和命名空间时,我收到此错误。我的所有命名空间类都在app / libs /

  

2016年12月16日04:30:50欧洲/柏林] PHP致命错误:

     

在第26行的/Users/mysite/app/page1.php中找不到类'App \ libs \ App'

这是我的代码:

require '../public/vendor/autoload.php';
use App\libs\App;
use App\libs\Auth;
    class Controller
     {
       public $app;
     public function __construct()
     {
        @set_exception_handler([$this, 'exceptionHandler']);
        $this->app       = new App();
     }

  }

1 个答案:

答案 0 :(得分:1)

自动加载通常仅包含供应商文件夹下的文件。如果您没有指示,它不会加载任何其他文件。你可能正在使用作曲家。如果是,您可以在composer.json文件中添加文件夹以包含来自其他文件夹(如App \ libs)的类文件。 composer.json文件的一个例子是:

{
    "require": {
        "twig/twig": "~1.0"
    },
    "autoload": {
        "psr-4": {
             "App\\": "App/"
        }
    }
}

在上面的例子中,它将自动加载App文件夹下的所有文件。 最后,您需要运行:composer dump-autoload才能使其正常工作。