Compare two rows for sorting purposes

(PHP 4 >= 4.1.0, PHP 5 <= 5.0.5, PECL dbx >= 1.1.0)

dbx_compareCompare two rows for sorting purposes


int dbx_compare ( array $row_a , array $row_b , string $column_key [, int $flags = DBX_CMP_ASC | DBX_CMP_NATIVE ] )

dbx_compare() is a helper function for dbx_sort() to ease the make and use of the custom sorting function.

Список параметров


First row


Second row


The compared column


The flags can be set to specify comparison direction:

  • DBX_CMP_ASC - ascending order
  • DBX_CMP_DESC - descending order
and the preferred comparison type:
  • DBX_CMP_NATIVE - no type conversion
  • DBX_CMP_TEXT - compare items as strings
  • DBX_CMP_NUMBER - compare items numerically
One of the direction and one of the type constant can be combined with bitwise OR operator (|).

Возвращаемые значения

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.


Пример #1 dbx_compare() example

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);

$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

// date in $result is now ordered by parentid (descending), then by id


Смотрите также

  • dbx_sort() - Sort a result from a dbx_query by a custom sort function