Eu já olhei os outros tópicos a respeito e tentei todas as possibilidades, mas ainda assim não funciona. Poderiam dar uma olhada e ver se tem algo que não entendi ou está errado? Eu fiz o curso de namespace tbm. Entendo o conceito mas não consegui fazer funcionar.
composer.json
{
"require": {
"symfony/cache": "^5.3",
"doctrine/orm": "^2.10"
},
"autoload": {
"psr-4": {
"Doctrine\\" : "src/"
}
}
}
Classe
<?php
namespace Doctrine\Helper;
use Doctrine\ORM\EntityManager;
use Doctrine\ORM\EntityManagerInterface;
use Doctrine\ORM\Tools\Setup;
class EntityManagerFactory {
public function getEntityManger(): EntityManagerInterface
{
$rootDir = __DIR__.'/../..';
$config = Setup::createAnnotationMetadataConfiguration(
[$rootDir. '/src'],
isDevMode: true
);
$connection = [ 'driver' => 'pdo.sqlite',
'path' => $rootDir .'/var/data/banco.sq'] ;
return EntityManager::create($connection, $config);
}
}
Teste
<?php
use Doctrine\Helper\EntityManagerFactory;
require_once __DIR__. '/vendor/autoload.php';
$entityManagerFactory = new EntityManagerFactory();
$entityManager = $entityManagerFactory->getEntityManger();
var_dump($entityManager->getConnection);
Erro:
PHP Fatal error: Uncaught Error: Class "Doctrine\Helper\EntityManagerFactory" not found in C:\Users\rlirio\Documents\Doctrine\teste.php:9
Stack trace:
#0 {main}
thrown in C:\Users\rlirio\Documents\Doctrine\teste.php on line 9
Fatal error: Uncaught Error: Class "Doctrine\Helper\EntityManagerFactory" not found in C:\Users\rlirio\Documents\Doctrine\teste.php:9
Stack trace:
#0 {main}
thrown in C:\Users\rlirio\Documents\Doctrine\teste.php on line 9