我正在嘗試將這個作曲包與我正在使用的新項目https://packagist.org/packages/activecollab/activecollab-sdk配合使用。但是,當我嘗試創建一個新班級時,我不斷收到以下錯誤。PSR-0自動加載問題
Fatal error: Class 'ActiveCollab\Client' not found
引發此錯誤的文件如下所示。
require "vendor/autoload.php";
new ActiveCollab\Client;
這只是用來測試文件是否被正確加載。我嘗試使用的文件的composer.json看起來像這樣。我有一個感覺問題是在這個文件中,但我無法弄清楚什麼。
stuff...
"autoload": {
"psr-0": {
"ActiveCollab\\": "ActiveCollab"
}
}
...stuff
而且看它被這樣產生的autload_namespaces.php文件。
<?php
// autoload_namespaces.php @generated by Composer
$vendorDir = dirname(dirname(__FILE__));
$baseDir = dirname($vendorDir);
return array(
'ActiveCollab' => array($vendorDir . '/activecollab/activecollab-sdk/ActiveCollab'),
);
我已經使用PSR-0我自己,一切的一些作曲家的包看起來是可能除了在命名空間中的駱駝情況下正確的,但我不認爲這是在PHP提案PSR被禁止-0。
感謝任何幫助,這一直使我瘋狂。
我不確定這一點,但根據psr0沒有一個類的文件名必須是ClassName.php。所以使用ClassName.class.php可能違反了這個? – echochamber