(PHP 4 >= 4.0.6, PHP 5 < 5.1.0, PECL dbx >= 1.1.0)
dbx_sort — Сортирует результат dbx_query с помощью пользовательской функции
$result
, string $user_compare_function
) : boolСортирует результат dbx_query() с помощью пользовательской функции.
result
Результирующий набор, возвращенный dbx_query().
user_compare_function
Определенная пользователем функция сравнения. Должна принимать два параметра и возвращать -1,0,1 в зависимости от того, меньше, равен или больше первый параметр второго.
Возвращает TRUE
в случае успешного завершения или FALSE
в случае возникновения ошибки.
Пример #1 Пример использования dbx_sort()
<?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("Не получилось подключиться");
$result = dbx_query($link, "SELECT id, parentid, description FROM tbl ORDER BY id");
// data в $result отсортированы по id
dbx_sort($result, "user_re_order");
// а теперь по parentid, по убыванию, а потом уже по id
dbx_close($link);
?>
Замечание:
В любом случае лучше использовать
SQL
операторORDER BY
вместо dbx_sort().