2016-07-20 8 views
0

Ich habe einen Wert, der mehrmals wiederholt wird:Count einen doppelten Wert PHP

 Code | reference 
    Product1 | lamp 
    Product2 | lamp 

Was ich will, ist, wenn es dupliziert es zeigt mir, wie das in meinem Tisch:

Code  | reference 
    Product1 |  1/2 
    Product2 |  2/2 

Dies ist meine Frage:

SELECT 

     product_list.id, 
     product_list.code, 
     product_list.reference 

    FROM product_list 

    GROUP BY product_list.code,product_list.reference 
    ORDER BY product_list.code 

Mein Code:

<tbody> 
    <?php 
     foreach ($data_list as $q => $a): 
    ?> 
      <tr> 
       <td><h3><?php echo $a["code"];?></h3></td> 
       <td><h3><?php echo $a["refernece"];?><h3></td> 
      </tr> 
+0

nicht möglich, mit einer einzigen Schleife. Der Wert "total" ist erst verfügbar, nachdem Sie Ihre Schleife abgeschlossen haben, was bedeutet, dass Sie sie während der Schleife nicht ausdrucken können - php kann keine Zeitreise machen. Sie benötigen mindestens zwei Schleifen (eine für die Inventarisierung, eine weitere für das Drucken der Ergebnisse). –

+0

Vielen Dank für Ihre Antwort. Wenn ich eine zweite foreach benutze, wie kann ich meine Ergebnisse so zählen und ausdrucken? – zouzou

+0

Können Sie uns zeigen, wie Ihre '$ data_list' aussieht? – nerdlyist

Antwort

0

Sie verwenden können: array_count_values, - Zählt alle Werte eines Arrays

Zum Beispiel:

$array = array(1,2,2,3,3,3,4,4,4,4); 
$vals = array_count_values($array); 
echo 'NON Duplicate Items found: '.count($vals).'<br><br>'; 
print_r($vals); 

Ausgangsergebnis:

NON Duplicate Items found : 7 
Array 
(
    [1] => 1 
    [2] => 2 
    [3] => 3 
    [4] => 4 
) 
Verwandte Themen