na aula 4 do módulo 4 ao executar o comando migrations:diff ele me aprensenta o seguinte:
vendor\bin\doctrine-migrations migrations:diff
In AnnotationException.php line 27:
[Syntax Error] Expected Doctrine\Common\Annotations\DocLexer::T_CLOSE_PARENTHESIS, got 'Aluno' at
position 25 in property Alura\Doctrine\Entity\Telefone::$aluno.
migrations:diff [--configuration [CONFIGURATION]] [--db-configuration [DB-CONFIGURATION]] [--editor-cmd [EDITOR-CMD]] [--filter-expression [FILTER-EXPRESSION]] [--formatted] [--line-length [LINE-LENGTH]] [--check-database-platform [CHECK-DATABASE-PLATFORM]] [--allow-empty-diff] [--from-empty-schema]
E posteriormente na aula 2 do módulo 5 apresenta o seguinte
In AnnotationException.php line 27:
[Syntax Error] Expected PlainValue, got '(' at position 62 in property Alura\Doctrine\Entity\Aluno
::$telefones.
migrations:diff [--configuration [CONFIGURATION]] [--db-configuration [DB-CONFIGURATION]] [--editor-cmd [EDITOR-CMD]] [--filter-expression [FILTER-EXPRESSION]] [--formatted] [--line-length [LINE-LENGTH]] [--check-database-platform [CHECK-DATABASE-PLATFORM]] [--allow-empty-diff] [--from-empty-schema]
meu arquivo Aluno.php
<?php
namespace Alura\Doctrine\Entity;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\Common\Collections\Collection;
/**
* @Entity
*/
class Aluno
{
/**
* @Id
* @GeneratedValue
* @Column(type="integer")
*/
private $id;
/**
* @Column (type="string")
*/
private $name;
/**
* @OneToMany(targetEntity="Telefone", mappedBy="aluno", cascade=("remove", "persist"))
*/
private $telefones;
/**
* @ManyToMany(targetEntity="Curso", mappedBy="alunos")
*/
private $cursos;
public function __construct()
{
$this->telefones = new ArrayCollection();
$this->cursos = new ArrayCollection();
}
public function getId(): int
{
return $this->id;
}
public function getName(): string
{
return $this->name;
}
public function setName(string $name): self
{
$this->name = $name;
return $this;
}
public function addTelefone(Telefone $telefone)
{
$this->telefones = add($telefone);
$telefone->setAluno($this);
return $this;
}
public function getTelefone(): Collection
{
return $this->telefones;
}
public function addCurso(Curso $curso): self
{
if ($this->cursos->contains($curso)) {
return $this;
}
$this->cursos->add($curso);
$curso->addAluno($this);
return $this;
}
public function getCursos(): Collection
{
return $this->cursos;
}
}
que inclusive está apontando erro de função indefinida no add, já conferi e a função existe mas continua apontando erro
Arquivo Telefone.php
<?php
namespace Alura\Doctrine\Entity;
/**
* @Entity
*/
class Telefone
{
/**
* @Id
* @GeneratedValue
* @Column(type="integer")
*/
private $id;
/**
* @Column(type="string")
*/
private $numero;
/**
* @ManyToOne(targetEntity="Aluno")
*/
private $aluno;
public function getId(): int
{
return $this->id;
}
public function setId(int $id): self
{
$this->id = $id;
return $this;
}
public function getNumero(): string
{
return $this->numero;
}
public function setNumero(string $numero): self
{
$this->numero = $numero;
return $this;
}
public function getAluno(): Aluno
{
return $this->aluno;
}
public function setAluno(Aluno $aluno): self
{
$this->aluno = $aluno;
return $this;
}
}
OBS: o primeiro "Syntax Error" não foi resolvido , depois do erro continuei fazendo as aulas e agora apresentou mais um "Syntax Error" e creio que se o segundo for resolvido o primeiro vai continuar.