Hallo,
bitte poste (, oder verweise auf) das Script!
das ganze Script spielt dabei gar keine Rolle, da ich den Fehler ja soweit eingrenzen kann.
/* Sortiert den Kalender */
function fSortiereKalender( &$arrKalender )
{
/* Vorgabe ist aufsteigend nach Datum und anschließend nach Dauer
Sortiert wird im Moment mittels multisort, eventuell ist usort schneller, ist aber derzeit nicht wichtig */
/* Referenz-Spalten rausziehen */
$arrSortierenNachTS = array(); $arrSortierenNachD = array(); /* Die Referenz-Arrays */
foreach( $arrKalender as $k => $v )
{
$arrSortierenNachTS[$k] = $v["timestamp"];
$arrSortierenNachD[$k] = $v["dauer"];
}
/* Sortieren, Kalender MUSS per Referenz uebergeben werden: http://bugs.php.net/bug.php?id=12936 */
array_multisort( &$arrSortierenNachTS, SORT_ASC, SORT_NUMERIC, &$arrSortierenNachD, SORT_ASC, SORT_NUMERIC, &$arrKalender );
} /* function fSortiereKalender( &$arrKalender ) */
Wegen http://bugs.php.net/bug.php?id=12936 MUSS das Array by reference übergeben werden:
It's a side-effect of the implementation. It could be fixed if I forced all arguments to be passed by reference, but that means that you can't specify SORT_* constants directly as arguments..
Die Funktion greift, wenn das Array by value übergeben wird, auf ein (nicht existentes) Array im globalen Namensraum zu.
Gruß, Thoralf
--
Sic Luceat Lux!
Sic Luceat Lux!