我在classes
目录所在的同一级别的根目录中有一个文件夹名vendor
。
在classes
文件夹中我有
所有这些类都有名称空间,例如
// connection.php
namespace Blah;
class Connection {}
// billing.php
namespace Blah;
class Billing{}
我有一个index.php文件,我想在不使用require
或include
的情况下使用这些类。以下是我正在使用的composer.json
文件。
{
"require": {
"slim/slim": "^2.6",
"zeuxisoo/slim-whoops": "0.3.0",
"videlalvaro/php-amqplib": "v2.1.0"
},
"autoload": {
"psr-4": {
"Blah\\": "classes/"
}
}
}
我也运行composer dump-autload
,但我无法加载这些类。在index.php上我得到了
Class 'Blah\Connection' not found
这是我的index.php代码:
<?php
// index.php
require 'vendor/autoload.php';
use Blah\Connection;
$connection = Connection::getInstance();
我在作曲家和命名空间方面相当新。需要指导我在这里做错了什么。感谢
答案 0 :(得分:1)
问题是文件名区分大小写。如果您重命名文件Connection.php(而不是connection.php),它将解决您的问题