Php/docs/function.dbx-compare
dbx_compare
(PHP 4 >= 4.1.0, PHP 5 < 5.1.0, PECL dbx >= 1.1.0)
dbx_compare — Compare two rows for sorting purposes
说明
dbx_compare
( array $row_a
, array $row_b
, string $column_key
[, int $flags
= DBX_CMP_ASC | DBX_CMP_NATIVE
] ) : int
dbx_compare() is a helper function for dbx_sort() to ease the make and use of the custom sorting function.
参数
row_a
First row
row_b
Second row
column_key
The compared column
flags
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
.
范例
Example #1 dbx_compare() example
<?phpfunction 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 iddbx_sort($result, "user_re_order"); // date in $result is now ordered by parentid (descending), then by iddbx_close($link);?>