Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

Problemas com o doctrine (Function ReflectionType::__toString() is deprecated

Ao inserir a linha vendor\bin\doctrine orm:generate-proxies na linha de comando do projeto roda o processo entity "Alura\Cursos\Entity\Curso" e o "Alura\Armazenamento\Entidy\Usuario" mas logo na linha abaixo mostra: Deprecated: Function ReflectionType::__toString() is deprecated in ...gerenciador-de-cursos\vendor\doctrine\common\lib\Doctrine\Common\Proxy\ProxyGenerator.php on line 1026

4 respostas

eu baixei o arquivo ao final do curso e rodei na mesma máquina que deu o erro e funcionou todas as funcionalidades. Vou comparar com o meu projeto para entender o que pode ter acontecido.

solução!

Olá, Iuri. Basta rodar um composer update na pasta do seu projeto que deve resolver.

Isso é uma incompatibilidade da versão dos pacotes que foram instalados no início do curso com o PHP 7.4.

Atualiza as dependências e me conta aqui se deu certo. :-)

Iuri, boa tarde!

Você está usando a versão 7.4 do PHP? Esse é um erro recorrente devido a versão. Oq você pode fazer é alterar na classe ProxyGenerator.php que está em gerenciador-de-cursos\vendor\doctrine\common\lib\Doctrine\Common\Proxy\ProxyGenerator.php na linha 1026.

Trocar

$paramType = (string) $parameterReflection->getType();

Por

$paramType = (string) ($parameterReflection->getType() ? $parameterReflection->getType()->getName() : null);

E também trocar

 $stringValue = 'hey' . $reflectionFunction->getReturnType();

Por

$stringValue = 'hey' . ($reflectionFunction->getReturnType() ? $reflectionFunction->getReturnType()->getName() : null)

Um resumo disso pode ser composer update como mencionado pelo instrutor Vinicius

Espero ter ajudado e bons estudos!

Bom dia Vinicius e Felipe,

Primeiramente obrigado pela atenção. Rodei o composer update, antes havia rodado apenas o composer install e não obtive sucesso, mas agora com o update o erro relatado acima não aconteceu, gerando o Proxy classes generated to "C:\Users\iuri\AppData\Local\Temp". Obrigado pela ajuda e boas aulas para vocês!