Hi,
ich hab da fogenden PHP-Code:
function top10() {
global $dbfile;
$datei = fopen($dbfile, "r");
while($zeile = fgetcsv($datei, 1000, "|")):
$zahl[$zeile[0]] = $zeile[2];
$url[$zeile[0]] = $zeile[1];
endwhile;
arsort($zahl);
$i='0';
foreach($zahl as $var)
{
if($i=='10') break;
echo " . key($zahl) . "<br>";
next($zahl);
$i++;
}
}
Wenn ich nun diese Funktion mit <? top10(); ?> in einer *.php Seite aufrufe, dann steht da sowas wie:
xx
xy
xxx
.
.
. (das ganze eben 10 mal)
Die Werte werden nach ihrer Downloadhäufigkeit aufgelistet.
Meine Frage nun. Wie kann ich noch eine Zahl vor jeden Wert kriegen, so dass am Ende sowas wie
1. xx
2. xy
3. xxx
4.
5. usw. bis 10.
steht?
Top 10 Downloads mit einer Zahl davor?????
Code: Alles auswählen
function top10() {
global $dbfile;
$datei = fopen($dbfile, "r");
while($zeile = fgetcsv($datei, 1000, "|")):
$zahl[$zeile[0]] = $zeile[2];
$url[$zeile[0]] = $zeile[1];
endwhile;
arsort($zahl);
$i='0';
$r = '0';
foreach($zahl as $var)
{
if($i=='10') break;
echo $r . ". " . key($zahl) . "<br>";
next($zahl);
$i++;
$r++;
}
}
hier das ganze noch etwas optimiert:
Code: Alles auswählen
function top10()
{
global $dbfile;
$datei = fopen($dbfile, "r");
while($zeile = fgetcsv($datei, 1000, "|")):
$zahl[$zeile[0]] = $zeile[2];
$url[$zeile[0]] = $zeile[1];
endwhile;
arsort($zahl);
$i ='0';
foreach($zahl as $var)
{
if($i =='10')
{
//
// Top Ten erreicht. Unterbrechen der Schleife
//
break;
}
echo $i . '. ' . key($zahl) . '<br />\n';
next($zahl);
$i++;
}
}