我有以下文件结构:
src/Models/Entity.php
vendor/*
index.php
composer.*
Entity.php 包含
<?php
namespace Vendor\App\Models;
class Entity {}
index.php 包含
<?php
namespace Vendor\App;
require 'vendor/autoload.php';
use Vendor\App\Models\Entity;
$entity = new Entity();
composer.json 包含:
{
"autoload": {
"psr-0": {"Vendor\\App\\": "src/"}
}
}
供应商/作曲家/autoload_namespaces.php 包含
<?php
// autoload_namespaces.php generated by Composer
$vendorDir = dirname(__DIR__);
$baseDir = dirname($vendorDir);
return array(
'Vendor\\App\\' => $baseDir . '/src/',
);
我明白了127.0.0.1:37409 [500]: / - Class 'Vendor\App\Models\Entity' not found in ...
。
错误在哪里?composer.json 中复杂的命名空间和/或源目录的格式是什么?
更新:我找到了解决方法(将 src/Models 移动到 src/Vendor/App/Models),但这是正常行为吗?