私は次のようなプロジェクト構造を持っています:
src/
├─ Model/
└─ User.php
私の User.php ファイルは次のようになります。
<?php
namespace Bix\Model;
class User {
そして、私の composer.json オートローダーはこれです:
"autoload": {
"psr-4": {
"Bix\\": "src/"
}
}
最後に私のbootstrap.phpはこれです:
use Bix\Model\User;
// PSR-4 Autoloader.
require_once "vendor/autoload.php";
ただし、を作成しようとするとnew User()
、エラーが発生しますFatal error: Class 'User' not found in /var/www/public/api/v1/index.php on line 8
composer autoload_psr4.php ファイルを見ると、問題ないようです。
// autoload_psr4.php @Composer で生成
$vendorDir = dirname(dirname(__FILE__));
$baseDir = dirname(dirname($vendorDir));
return array(
'XdgBaseDir\\' => array($vendorDir . '/dnoegel/php-xdg-base-dir/src'),
'Monolog\\' => array($vendorDir . '/monolog/monolog/src/Monolog'),
'KeenIO\\' => array($vendorDir . '/keen-io/keen-io/src'),
'Bix\\' => array($baseDir . '/src'),
);
上記のどこが間違っているのか、誰でも指摘できますか?