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

Mostrar os dados em uma tabela

Tarde...

Vimos nesta aula que, para não repetir o nome do aluno, fizemos algo assim:

    foreach ($result as $row) {

      if (!array_key_exists($row['id'],$listaAlunos)) {
        $listaAlunos[$row['id']] = new Student (
          $row['id'],
          $row['name'],
          new \DateTimeImmutable($row['birth_date'])
        );
      }
      $phone = new Phone($row['phone_id'],$row['area_code'],$row['number']);
      $listaAlunos[$row['id']]->adicionarTelefone($phone);
    }

Pefeito, entendido.

Fique com dúvida de como mostrar os alunos em uma tabela.

Pelo que entendi, deveriam ser com 2 foreach, mais ou menos assim:

    $alunos = $repositorio->alunosComTelefone();

    foreach ($alunos as $aluno) {

      foreach ($aluno->telefones() as $telefone) {

            echo $aluno->getNome() . ' - ' . $telefone->getNumero(); // faz de conta que isso é uma linha da tabela, pra não ter que fazer o html... :)

        }
    }

A saída deve ser algo assim:


flavio - 11 9999999
flavio - 11 8888888
flavio - 11 7777777
juca   - 11 3333333
fulano - 11 6666666
fulano - 11 2222222
...

Tá certo assim?

Tenho outra dúvida, mas vamos por partes...

2 respostas
solução!

Fala, Flavio. Dessa sua forma funciona sim.

Sempre há várias opções, mas dessa forma funciona.

Boa! Vlw!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software