繁体   English   中英

PSR4 Composer自动加载名称空间

[英]PSR4 Composer Autoloading namespaces

我一直在尝试一些Composer自动加载,并且遇到了一些问题,因此目录结构是

index.php
app/
   helpers/
          router.php
vendor/
   composer/
          /*usual files*/
   autoload.php

在我的composer.json内部,我有以下内容

"autoload": {
        "psr-4": {
            "App\\": "app/"
        }
    }

在我的index.php我有

<?php
// Autoload our namespaces
require __DIR__.'/vendor/autoload.php';

use App\Helpers\Router;
$route = new Router;

出现以下错误

Fatal error: Class 'App\\Helpers\\Router' not found in /var/www/public/index.php on line 6

我尝试了几种不同的方法来尝试使其正常工作,但我不确定我要去哪里。 这是我第一次尝试在框架外部使用Composer进行自动加载,因此不胜感激。

PSR-4区分大小写。 该结构必须是app/Helpers/Router.php或带有大写A的更好App。

所有类名必须以区分大小写的方式引用。

子目录名称必须与子命名空间名称的大小写匹配。

终止类名对应于以.php结尾的文件名。 文件名必须与终止类名的大小写匹配。

http://www.php-fig.org/psr/psr-4/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM