PHP Manual
PrevNext

dbx_compare

(PHP 4 >= 4.1.0)

dbx_compare -- Compare two rows for sorting purposes

Description

int dbx_compare ( array row_a, array row_b, string column_key [, int flags])

dbx_compare() returns 0 if the row_a[$column_key] is equal to row_b[$column_key], and 1 or -1 if the former is greater or is smaller than the latter one, respectively, or vice versa if the flag is set to DBX_CMP_DESC. dbx_compare() is a helper function for dbx_sort() to ease the make and use of the custom sorting function.

The flags can be set to specify comparison direction:

and the preferred comparison type: One of the direction and one of the type constant can be combined with bitwise OR operator (|). The default value for the flags parameter is DBX_CMP_ASC | DBX_CMP_NATIVE.

Example 1. dbx_compare() example

<?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 ("Could not connect");
$result = dbx_query ($link, "SELECT id, parentid, description FROM table ORDER BY id");
 // data in $result is now ordered by id
dbx_sort ($result, "user_re_order");
 // date in $result is now ordered by parentid (descending), then by id
dbx_close ($link);
?>

See also dbx_sort().


PrevHomeNext
dbx_sortUpDB++ Functions

AltStyle によって変換されたページ (->オリジナル) /