Mss niet precies wat je zoekt maar het zal je iig op weg helpen :)
<?
# Rijtje met getalletjes
$array = array(1,2,3,2,3,4,3,5,4,4,5,5,5,5,4);
# Hoogste getal zoeken
for($i=0;$i<=(count($array)-1);$i++)
{
if($array[$i] > $num || !$num)
$num = $array[$i];
}
# Loopen tot en met he hoogste getal
for($j=0;$j<=$num;$j++)
{
# Teller op 0
$aantal = 0;
# Loopen door de array
for($k=0;$k<=(count($array)-1);$k++)
{
# Kijken offie uitzelfde is
if($array[$k] == $j)
$aantal++;
}
# Stop de uitkomsten in een array
$cijfers[$j] = $aantal;
}
# Uitlezen
foreach($cijfers as $key => $value)
echo "\$cijfers[" . $key . "] = " . $value . "<br />";
?>
hmmmm .... ik geraak er niet aan uit,
ik kan nu al achterhalen hoeveel tekstvakken er zijn ingevuld ... nu moet ik enkel nog filteren uit de array
ff in pseudo code opstellen:
$fields = aantal ingevulde tekstvakken
filter uit array
--> waarden die $fields x voorkomen
was het maar zo gemakkelijk :-p iemand enig idee hoe ik dit in werkende php code kan schrijven?
greetz Blackmoon
d
dutchcamel
11-08-2004 17:09
gewijzigd op 11-08-2004 17:21
<?
function get_double($array = array()) {
$single = array();
$double = array();
foreach ($array as $value) {
$target = !in_array($value, $single) ? 'single' : 'double';
array_push(${$target}, $value);
}
return array_unique($double);
}
?>
Zo gebruiken:
<?
$numbers = array(
4,
2,
4,
3,
1,
5,
2,
4
);
$doubles = get_double($numbers);
?>
$doubles is nu een array met de dubbele waarden uit $numbers waarbij een waarde maximaal 1 keer voorkomt. In dit voorbeeld zou
<?
print_r($doubles);
?>
dus dit als output geven:
Array ( [1] => 2 [2] => 4 )