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

Não entendi muito bem a refatoração

Bom dia. Eu fiz os cursos de array do php, porém não entendi essa refatoração que fizemos:

echo implode(',', $aluno->getTelefones()->map(fn (Telefone $telefone) => $telefone->numero)->toArray());

Se o map ja retorna o número do telefone (que é string), porque o toArray e o implode? Achei o foreach que tinhamos feito mais fácil de entender, poderia explicar essa refatoração? Se o map já devolve em string essa coleção dos numeros de telefone, para que transformar em array e depois ter que dar implode transformando em string de novo?

2 respostas
solução!

Se o map ja retorna o número do telefone (que é string), porque o toArray e o implode?

O map devolve uma coleção de números de telefones, ou seja, uma coleção de strings. O toArray transforma essa coleção em um array do PHP e o implode une os itens desse array com vírgula para nós podermos exibir no terminal. :-D

Entendi ok obg