Moin!
Array
{
[5] => Array
(
[PicNr] => 111
[osname] => x8.gif
[origname] => button_down.png
...
[6] => Array
(
[PicNr] => 8
[osname] => x2.gif
[origname] => button_up.png
...
Ich dachte ich könnte eine Sortierung mit array_multisort() machen. Also ich hoffte, array_multisort($trans,"osname") würde $trans[6] vor $trans[5] einreihen.
Ok, du willst also nach dem Feld "osname" deines Subarrays sortieren. Das ist, wie von Andreas Görtz schon gesagt, exakt das Anwendungsbeispiel 2 von usort().
Du hast die einzelnen Elemente, die ja komplett verschoben sortiert werden sollen, in _einem_ Array. Deshalb ist array_multisort() falsch, weil das Dinge in _mehreren_ Arrays sortiert.
Jedenfalls habe ich jetzt was funktionierendes beinander, aber ich verstehe es nicht:
foreach ($trans as $val)
{
$sortarray[] = $val['osname'];
}
array_multisort($sortarray,$trans);
Wenn du stattdessen das Beispiel 2 von usort() nimmst, und die Vergleichsfunktion von "fruit" auf "osname" umstellst, wirst du Erfolg haben.
- Sven Rautenberg