Create an "inventory" in php

Asked

Viewed 112 times

2

I’m trying to create a kind of inventory in php. basically a program that by placing a certain number on the screen, it takes you to the inventory, where you can pick up and remove items.
I’m trying to make the program show all the items that are marked with the number 3 (number that identifies the item is in the inventory), but I don’t know how to do the following algorithm in php:

        $itens=array('ameixa' => 2, 'abacate'=>3, 'mamão' =>1, 'maçã' =>3);
         echo'<table style="align:center;" border="1">';

         for($i=0;$i<=$itens.lengh; $i++)
         {
            if($itens[$i] == 3)
            {
            echo'<tr>
            <td>'.$itens[$i].'</td></tr>';
            }
         }
  • 1

    The comparison signal is == and not just one, which would set a value to a variable.

  • Okay, but the command "variável".lengh works in php?

  • 1

    Use theforeach to traverse array in PHP.

  • and how do I pull not only the number, but the name of the array as well?

  • Studying as the foreach works :D

2 answers

2

An easy way to traverse an array is to use foreach

$itens=array('ameixa' => 2, 'abacate'=>3, 'mamão' =>1, 'maçã' =>3);
echo'<table style="align:center;" border="1">';

//Um exemplo:
//Na primeira interação '$key' seria a ameixa e o '$value' seria 2 
foreach($itens as $key => $value){
    //Aqui é verifica e imprime o item
    if($value == 3) echo '<tr><td>'.$key.'</td></tr>';
}

1


$itens = array('ameixa' => 2, 'abacate' => 3, 'mamão' => 1, 'maçã' => 3);

echo '<table style="align:center;" border="1">';

// Como não está explicito a posição de cada item do inventário, aqui pegamos a posição de cada um
$keys = array_keys($itens);    

// Criamos um for usando um count para contar a quantidade de itens do inventário
for ($i = 0; $i < count($itens); $i++) {
    // Definimos nessa variável o nome do itens
    $key = $keys[$i];
    // Definimos nessa variável o número que está dentro do itens
    $value = $itens[$key];
    // Fazemos a comparação pra ver se o número é igual a 3
    if ($value == 3) {
        // Então imprimimos o nome do item
        echo '<tr><td>'.$key.'</td></tr>';
    }
}
  • Really, the best answer I could have. Thank you very much.

Browser other questions tagged

You are not signed in. Login or sign up in order to post.