【发布时间】:2013-12-09 11:27:11
【问题描述】:
我目前正在尝试通过 Composer 使用 PSR-0 自动加载,但出现以下错误:
Fatal error: Class 'Twitter\Twitter' not found
我的目录结构是这样的
- Project
- src
- Twitter
Twitter.php
- vendor
- Test
index.php
我的 index.php 文件如下所示:
<?php
use Twitter;
$twitter = new Twitter();
我的 Twitter.php 文件如下所示
<?php
namespace Twitter;
class Twitter
{
public function __construct()
{
// Code Here
}
}
最后我的 composer.json 看起来像这样:
{
"require": {
"phpunit/phpunit": "3.8.*@dev",
"guzzle/guzzle": "3.7.*@dev"
},
"minimum-stability": "dev",
"autoload": {
"psr-0": {
"Twitter" : "src/Twitter"
}
}
}
我有点糊涂了。我来自 C# 背景,这种工作方式让我有点困惑。使用 PSR-0 自动加载的正确方法是什么?
【问题讨论】:
-
您还必须包含 autoloader.php 文件 - 但是,如果在 composer.json 文件中定义了其他所有内容,那么这很可能是您使用 require/include 显式加载的唯一内容.有关如何使用它的更多详细信息,请参阅 Composer 常见问题解答。
标签: php composer-php psr-0