Ir para conteúdo
Fórum Script Brasil
  • 0

Gabrielvt14

Pergunta

Ola, sou iniciante em PHP e estou com dificuldade para usar array em função anonima.

tenho seguinte código:

 

<?php

  $med = function($n1,$n2,$n3,$n4){
      $result = ($n1+$n2+$n3+$n4)/4;
      return $result;
    }
      $aluno[0]["nome"] = "Brian Johnson";
      $aluno[0]["media"] = $med(3,6,6,8);

      $aluno[1]["nome"] = "Lenny Kravitz";
      $aluno[1]["media"] = $med(1,4,2,5);

      $aluno[2]["nome"] = "Bruce Dickinson";
      $aluno[2]["media"] = $med(4,5,4,4);

      $aluno[3]["nome"] = "James Hetfield";
      $aluno[3]["media"] = $med(7,4,7,7);

      $aluno[4]["nome"] = "Angus Young";
      $aluno[4]["media"] = $med(7,6,6,8);

    for($i = 0, $n = count($aluno); $i < $n; $i++){
      echo "<b>Nome do aluno: </b>" . $aluno[$i]["nome"] . "</b><br>";
      echo "<b>Media do aluno: </b>" . $aluno[$i]["media"] . "</b><br><br>";
      }
    
?>

 

 

Tenho array contendo notas e nomes dos alunos. Porém quando executo desta maneira ele da o seguinte erro " Parse error: syntax error, unexpected '$aluno' (T_VARIABLE) in C:\wamp64\www\PHP\exec_time.php on line 7 ".

Quando eu não uso função anonima (function med($n1,$n2,$n3,$n4)) ele roda sem erros, mas quando tento usar função anonima ele apresenta este erro na variavel $aluno.

Pesquisei muito mas não consegui resolver este problema. Alguém poderia me auxiliar?

 

Desde já agradeço!

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0

Olá, aparentemente você esqueceu um ponto e vírgula depois da função anônima.

Observe o código abaixo.

<?php

  $med = function($n1,$n2,$n3,$n4){
      $result = ($n1+$n2+$n3+$n4)/4;
      return $result;
    };
      $aluno[0]["nome"] = "Brian Johnson";
      $aluno[0]["media"] = $med(3,6,6,8);

      $aluno[1]["nome"] = "Lenny Kravitz";
      $aluno[1]["media"] = $med(1,4,2,5);

      $aluno[2]["nome"] = "Bruce Dickinson";
      $aluno[2]["media"] = $med(4,5,4,4);

      $aluno[3]["nome"] = "James Hetfield";
      $aluno[3]["media"] = $med(7,4,7,7);

      $aluno[4]["nome"] = "Angus Young";
      $aluno[4]["media"] = $med(7,6,6,8);

    for($i = 0, $n = count($aluno); $i < $n; $i++){
      echo "<b>Nome do aluno: </b>" . $aluno[$i]["nome"] . "</b><br>";
      echo "<b>Media do aluno: </b>" . $aluno[$i]["media"] . "</b><br><br>";
      }

 

Link para o comentário
Compartilhar em outros sites

  • 0

testei o seguinte  código

<?php

$med = function($n1,$n2,$n3,$n4){
      $result = ($n1+$n2+$n3+$n4)/4;
      return $result;
};

$aluno[0]["nome"] = "Brian Johnson";
$aluno[0]["media"] = $med(3,6,6,8);

$aluno[1]["nome"] = "Lenny Kravitz";
$aluno[1]["media"] = $med(1,4,2,5);

$aluno[2]["nome"] = "Bruce Dickinson";
$aluno[2]["media"] = $med(4,5,4,4);

$aluno[3]["nome"] = "James Hetfield";
$aluno[3]["media"] = $med(7,4,7,7);

$aluno[4]["nome"] = "Angus Young";
$aluno[4]["media"] = $med(7,6,6,8);

for($i = 0, $n = count($aluno); $i < $n; $i++){
      echo "<b>Nome do aluno: </b>" . $aluno[$i]["nome"] . "</b><br>";
      echo "<b>Media do aluno: </b>" . $aluno[$i]["media"] . "</b><br><br>";
}

funcionou perfeitamente.

teste.jpg

Link para o comentário
Compartilhar em outros sites

  • 0

Olá rickayron. Agradeço sua resposta.

Sua resposta ao meu post estava correta. Eu respondi dizendo que não tinha funcionado porque eu tinha colocado o ponto e virgula na chave errada, por isso o meu não funcionava.

Demorei a dar meu feedback porque estava na correria e não consegui entrar no fórum para dizer que era eu que estava colocando ponto e virgula na chave errada.

Agradeço sua atenção!

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,8k
×
×
  • Criar Novo...