我的slim(http://www.slimframework.com/)应用程序遇到问题。当我尝试使用命名空间加载数据库类时,出现以下错误:
Message: Class 'Craft\Code\CraftDB\Database' not found
我在文件夹app / config / Database.php中有Database.php
我的数据库类是这样开始的
namespace Craft\Code\CraftDB;
class Database {
我正试图在另一个文件中使用它:
use Craft\Code\CraftDB as DB;
class MyOtherClass {
protected $connectDb;
protected $db;
public function __construct() {
$this->connectDb = new DB\Database;
$this->db = $connectDb->connect();
}
我的Composer文件是:
"autoload": {
"psr-4": {
"Craft\\Code\\": "app/"
}
}
我正在尝试查找问题,但现在迷路了。请帮忙。谢谢
答案 0 :(得分:2)
您说文件的位置是:app/config/Database.php
您告诉Composer的文件是:app/CraftDB/Database.php
在这里似乎根本不匹配。在文件系统方面,您无法解决config
级别,而在名称空间中却在名称空间方面CraftDB
级别。
根据您的描述,我想您需要类似的东西:
"autoload": {
"psr-4": {
"Craft\\Code\\CraftDB\\": "app/config/"
}
}