Hallo.
Ich habe massig Arrays mit folgender Struktur:
Jetzt möchte ich das Array Durchlaufen können, allerdings soll es sortiert sein, z.B. nach "Name" oder "Size" :)
Meine Funktion macht das auch, allerdings wenn eine sortierte Größe doppelt ist, gibt es nur den letzten Wert. Ich weiß logischer Weise auch warum, da ich den Key immer wieder überschreibe. Hier meine Funktion:
Diesen rufe ich z.B. auf mit
Weiteres Problem: Großgeschriebene Wörter werden ganz an den anfang geschrieben :O
Wie kann ich das sauber lösen. Wichtig ist, dass ich das Array so zurückbekomme, wie es jetzt zurück gegeben wird (=> nur halt nach etwas sortiert) und dass ich es nach allem sortieren kann(z.B. name,data,size und auch noch weiteren => deswegen der Funktionsparameter!), da es schon eine Weiterverarbeitung gibt. Danke :):)
PS: Das Main-Array soll sortiert werden ! Nicht die SubArrays![Big Grin :D :D](https://cdn.jsdelivr.net/joypixels/assets/8.0/png/unicode/64/1f600.png)
Desweiteren gibt es ein weiteres Problem: Alle Großgeschr
Ich habe massig Arrays mit folgender Struktur:
PHP:
<?php
$arr_Values = array();
$arr_Values['xyz'] = array(
'name'=>'xyz',
'size'=>'2135',
'data'=>'xadjasdkhhk.skl'
);
$arr_Values['dasda'] = array(
'name'=>'dasda',
'size'=>'123'
'data'=>'dasd.skl'
);
?>
Jetzt möchte ich das Array Durchlaufen können, allerdings soll es sortiert sein, z.B. nach "Name" oder "Size" :)
Meine Funktion macht das auch, allerdings wenn eine sortierte Größe doppelt ist, gibt es nur den letzten Wert. Ich weiß logischer Weise auch warum, da ich den Key immer wieder überschreibe. Hier meine Funktion:
PHP:
<?php
function sortFiles($arr_Files,$str_Key,$boo_Reverse = false)
{
$arr_Current = $arr_Return = array();
foreach($arr_Files AS $str_Name => $arr_File)
{
$arr_Current[$arr_File[$str_Key]] = $str_Name;
}
if($boo_Reverse)
{
krsort($arr_Current);
}
else
{
ksort($arr_Current);
}
foreach($arr_Current AS $str_KeyValue => $str_Name)
{
$arr_Return[$str_Name] = $arr_Files[$str_Name];
}
return $arr_Return;
}
?>
Diesen rufe ich z.B. auf mit
PHP:
<?php
$arr_Sorted = sortFiles($arr_Values,'size',false);
?>
Weiteres Problem: Großgeschriebene Wörter werden ganz an den anfang geschrieben :O
Wie kann ich das sauber lösen. Wichtig ist, dass ich das Array so zurückbekomme, wie es jetzt zurück gegeben wird (=> nur halt nach etwas sortiert) und dass ich es nach allem sortieren kann(z.B. name,data,size und auch noch weiteren => deswegen der Funktionsparameter!), da es schon eine Weiterverarbeitung gibt. Danke :):)
PS: Das Main-Array soll sortiert werden ! Nicht die SubArrays
![Big Grin :D :D](https://cdn.jsdelivr.net/joypixels/assets/8.0/png/unicode/64/1f600.png)
Desweiteren gibt es ein weiteres Problem: Alle Großgeschr
Zuletzt bearbeitet: