(PHP 4 >= 4.0.6, PHP 5 < 5.1.0, PECL dbx >= 1.1.0)
dbx_sort — Ordena um resultado de uma dbx_query usando uma função
$result
, string $user_compare_function
) : boolOrdena um resultado de um dbx_query() chamando uma função para ordenação.
result
Um conjunto de resultados retornado por dbx_query().
user_compare_function
A função do usuário definida para comparação. Ela precisa aceitar dois argumentos e retornar um inteiro menor que, igual a, ou maior que zero se o primeiro argumento é considerado respectivamente menor que, igual a, ou maior que o segundo.
Retorna TRUE
em caso de sucesso ou FALSE
em caso de falha.
Exemplo #1 Exemplo da dbx_sort()
<?php
function reordenar_usuario ($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, "", "bd", "nome de usuário", "senha")
or die ("Não foi possível conectar");
$resultado = dbx_query ($link, "SELECT id, parentid, descricao FROM tabela ORDER BY id");
// dados em $resultado estão ordenados pelo id
dbx_sort ($resultado, "reordenar_usuario");
// dados em $resultado agora estão ordenados pelo parentid (ordem decrescente), e depois pelo id
dbx_close ($link);
?>
Nota:
É sempre melhor usar a cláusula
ORDER BY
daSQL
ao invés de dbx_sort(), se possível.