# Elemente im Array zählen



## schleckerbeck (26. November 2004)

Hi,

 hab folgendes Problem:
 Ich hab ein ein Array $res in das mit der Funktion array_push immer wieder Produkte eingetragen eingetragen werden. Da man ja auch ein Produkt mehrmals auswählen kann ist es also 2 mal oder 5 mal im Array vorhanden.
 Wie schaff ich es jetzt, dass ich mir jedes Produkt einmal ausgeben lasse, und dazu die Anzahl (also wie oft es im Array vorkommt).

 Habs schon mal so probiert:


```
foreach($res as $idw)
 	{
 	
 	$anz=0;
 	
 	foreach($res as $cntprod)
 	{
 		if($cntprod==$idw)
 		{$anz++;}
 	}
```
 
 Es gibt mir zwar die Anzahl der Produkte aus, aber jedes Produkt das mehrmals enthalten ist, auch doppelt oder dreifach.

 Würd mich über ne Lösung freuen!

 sers


----------



## Oliver Gringel (26. November 2004)

Diese Funktion sollte genau das machen, was du suchst: http://www.php.net/array_count_values


----------



## schleckerbeck (26. November 2004)

Danke für die schnelle Antwort. Das ist auf jedenfall mal ein Ansatz.
 Jetzt hab ich aber immer noch das Problem, dass mir jeder eintrag doppelt ausgegeben wird. Ich hab zwar die Anzahl der einzelnen Elemente im Array, aber die foreach Funktion gibt mir immer noch die Einträge doppelt und dreifach aus (was auch logisch ist).
 Wie könnte ich das noch umgehen?

 thx!


----------



## Oliver Gringel (26. November 2004)

Auch dafür bietet dir PHP eine Funktion: http://www.php.net/array-unique
Du solltest dir mal die Array-Funktionen von PHP anschaun: http://www.php.net/array


----------



## schleckerbeck (29. November 2004)

Danke Jungs, jetzt funktionerts!


----------

