Array sortieren mit asort?

10x10

Mitglied
Hallo,

ich habe ein Problem mit dem Sortieren eines Arrays.

Offline hat alles einwandfrei funktionert, aber jetzt beim Online-Test wird immer alles falsch sortiert. Kann mir bitte jemand sagen warum es online falsch sortiert wird!

Ich lese ein Verzeichnis aus und will, dass dann alle Dateien nach Alpaphet sortiert ausgegeben werden.

In dem Verzeichnis liegen einige Dateien mit z.B. den Dateinamen:
1_ich_bin_ein_Bild.jpg
2_ich_bin_ein_Bild.gif
3_ich_bin_eine_Flashdatei.swf
4_ich_bin_ein_Bild.png
usw.

Hier mein Script:
PHP:
$files = array();
$dirname = './bilder/meineBildergallerie/'; //Pfad zum Ordner
$ext = array("jpg", "JPG", "jpeg", "JPEG", "swf", "SWF", "png", "PNG", "gif", "GIF"); //Dateitypen die _nur_ angezeigt werden sollen
if($handle = opendir($dirname)) {
	while(false !== ($file[$i] = readdir($handle)))
		for($d=0;$d<sizeof($ext);$d++)
		if(strstr($file[$i], ".".$ext[$d]))
			$files[$i][] = $file[$i];
			closedir($handle);
}	
//Im Array $files sind nun alle Dateien, die die Endung, die bei $ext angegeben worden sind
$dataTitel="";
asort($file);
$zaehler=0;
foreach($files[$i] as $string){
	$dataTitel.=$zaehler."_".$string."#"; 	
	$zaehler++;
}

Benötige dringend Hilfe, da mein Kunde schon auf das Projekt wartet und ich ihm zugesagt habe, dass ich es ihm heute noch präsentiere. Tja, offline hat ja alles einwandfrei funktioniert. Ich versteh das nicht?

Grüße
Max
 
Solltes du ev. nicht das folgende machen?
Du willst duch den Unterarray
Code:
$files[$i]
sortieren.
Code:
asort($files[$i]);
 
Super, danke vielmals! So funktioniert`s jetzt!

Das ich das nicht selbst drauf gekommen bin...

Komisch war nur, dass es offline einwandfrei funktionierte, nur online wurde es falsch sortiert.
 
Super, danke vielmals! So funktioniert`s jetzt!

Das ich das nicht selbst drauf gekommen bin...

Komisch war nur, dass es offline einwandfrei funktionierte, nur online wurde es falsch sortiert.

Komisch für mich ist da nur das "sizeof($ext);".......das ergibt bei 10 Filetypes immer nur 10.......bei 15 Einträge im Array ergibt es immer 15.

Wo die Schleifen anfangen und wo sie wieder aufhören, weiss nach 3 Monaten kein Mensch mehr,- muss schwer sein, 2 Klammern zu setzen :rolleyes:
 
Zurück