dbx_sort

Sort a result from a dbx_query by a custom sort function

&reftitle.description; `bool` `dbx_sort` `object` `result` `string` `user_compare_function`

Sort a result from a `dbx_query` call with a custom sort function.

&reftitle.parameters;

`result`

- A result set returned by `dbx_query`.

`user_compare_function`

- The user-defined comparison function. It must accept two arguments and return an integer less than, equal to, or greater than zero if the first argument is considered to be respectively less than, equal to, or greater than the second.

&reftitle.returnvalues;

&return.success;

&reftitle.examples;

### `dbx_sort` 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 tbl ORDER BY id");
        // data in $result is now ordered by id

    dbx_sort($result, "user_re_order");
        // data in $result is now ordered by parentid (descending), then by id

    dbx_close($link);
    ?>

&reftitle.notes;

It is always better to use `ORDER BY` `SQL` clause instead of `dbx_sort` if possible.

&reftitle.seealso;

- `dbx_compare`