(PHP 4 >= 4.0.6, PHP 5 < 5.1.0, PECL dbx >= 1.1.0)
dbx_sort — Sortiert das Ergebnis eines dbx_query mittels einer benutzerdefinierten Sortierfunktion
$result
, string $user_compare_function
) : boolSortiert das Ergebnis eines dbx_query()-Aufrufs mit einer benutzerdefinierten Sortierfunktion.
resultEin Resultset, das von dbx_query() zurückgegeben wurde.
user_compare_functionDie benutzerdefinierte Vergleichsfunktion. Diese muss zwei Argumente akzeptieren und einen Integer kleiner, größer oder gleich null zurückgeben, wenn das erste Argument entsprechend als kleiner, größer oder gleich dem zweiten Argument betrachtet wird.
Gibt bei Erfolg TRUE zurück. Im Fehlerfall wird FALSE zurückgegeben.
Beispiel #1 dbx_sort()-Beispiel
<?php
function user_re_order($a, $b)
{
$rv = dbx_compare($a, $b, "parentid", DBX_CMP_DESC);
if (!$rv) {
$rv = dbx_compare($a, $b, "id", DBX_CMP_NUMBER);
}
return $rv;
}
$link = dbx_connect(DBX_ODBC, "", "db", "username", "password")
or die("Fehler beim Verbinden");
$result = dbx_query($link, "SELECT id, parentid, description FROM tbl ORDER BY id");
// Die Daten in $result sind nun nach id geordnet
dbx_sort($result, "user_re_order");
// Die Daten in $result sind nun nach parentid (absteigend) geordnet,
// dann nach id
dbx_close($link);
?>
Hinweis:
Es ist immer besser, wenn irgend möglich die
ORDER_BYSQL-Klausel statt der Funktion dbx_sort() zu verwenden.