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

Atribuir vetor declarando $produtos = [];

Esta atribuição se faz certa?

$produtos[$i] = $produto; $i++;

Pois, no vídeo, o professor usa o array_push, porquê declarou na variável produtos um array, mas nas versões mais novas do php pode-se usar por exemplo: $produtos = []; Daí, gostaria de saber como seria a atribuição e o retorno neste caso.

2 respostas

Considerando que o nome do seu array seja $produtos... ao inserir algum conteúdo nele não é necessário colocar o '[]' ... a não ser que tu queira definir em qual index quer inserir... exemplo de atribuição:

$produtos = array("maça", $produtoDois, $produto3);

ou se tu já tiver outro vetor que queira inserir basta inserir direto

$produtos = $arrayProdutos;

Caso queira definir o valor do index basta seguir o processo que tu colocou:

$produtos[$index] = $produto;

solução!

Olá, Nádia.

Sua dúvida ficou um pouco confusa, mas vou tentar saná-la:

Primeiro, sim, a atribuição está correta.

Segundo, a função array_push adiciona itens em um array, e é recomendada quando queremos adicionar vários itens de uma só vez.

Quanto a inicializar um array com $produtos = [];, é idêntico a $produtos = array();. São 2 sintaxes diferentes para obter o exato mesmo resultado.

Agora, finalizando e o mais importante, se você quiser adicionar um valor ao final de um array, basta fazer:

$produtos[] = $novoItem;

Isso faz com que o valor de $novoItem seja adicionado ao array (já existente) $produtos.

Está no forno, quase saindo, um novo curso básico de PHP como continuação deste aqui que vai explicar com mais detalhes os arrays no PHP.