Estou tendo problemas com o Autoload.
Todos os arquivos estão identicos aos baixados da plataforma da Alura. Para descartar qualquer erro de digitação.
Ao rodar o arquivo banco.php, retorna: PHP Fatal error: Uncaught Error: Class 'Alura\Banco\Modelo\Endereco' not found in C:\OTAVIO\Alura\03_phpOO\banco.php:10 Stack trace:
#0 {main} thrown in C:\OTAVIO\Alura\03_phpOO\banco.php on line 10
o código só funciona se eu mover o require_once pra fora do "if (file_exists($caminhoArquivo))", ou seja utilizar o require_once do autoload sem nenhuma verificação.
O arquivo autoload.php (recém baixado da plataforma): <?php
spl_autoload_register(function (string $nomeCompletoDaClasse) { $caminhoArquivo = str_replace('Alura\Banco', 'src', $nomeCompletoDaClasse); $caminhoArquivo = str_replace('\', DIRECTORY_SEPARATOR, $caminhoArquivo); $caminhoArquivo .= '.php';
if (file_exists($caminhoArquivo)) {
require_once $caminhoArquivo;
}
});
Vi que outras pessoas tiveram o mesmo erro, mas não consegui entender qual foi o problema. Estou utilizando o VSCODE, com php 7.3