Funciones de dbx
PHP Manual

dbx_compare

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

dbx_compare — Comparar dos filas con propósitos de ordenación

Descripción

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

dbx_compare() es una función de ayuda para dbx_sort() para facilitar la construcción y el uso de funciones de ordenación personalizadas.

Parámetros

row_a

Primera fila

row_b

Sgunda fila

column_key

La columna comparada

flags

flags puede ser establecido para especificar la dirección de comparación:

  • DBX_CMP_ASC - orden ascendente
  • DBX_CMP_DESC - orden descendente
y el tipo de comparación preferido:
  • DBX_CMP_NATIVE - sin conversión de tipo
  • DBX_CMP_TEXT - comparar elementos como cadenas
  • DBX_CMP_NUMBER - comparar elementos numéricamente
Se pueden combinar una de las constantes de dirección y tipo con el operador a nivel de bit OR (|).

Valores devueltos

Devuelve 0 si row_a[$column_key] es igual a row_b[$column_key], y 1 o -1 si el primero es mayor o menor que el segundo respectivamente, o vice versa si flag está establacido a DBX_CMP_DESC.

Ejemplos

Ejemplo #1 Ejemplo de dbx_compare()

<?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;
}

$enlace   = dbx_connect(DBX_ODBC, "", "db", "username", "password")
    or die(
"No se pudo conectar");

$resultado = dbx_query($enlace, "SELECT id, parentid, description FROM table ORDER BY id");
    
// la información en $resultado ahora está ordenada por id

dbx_sort($result, "user_re_order");
    
// la información en $resultado ahora está ordenada por parentid (descendentemente), luego por id

dbx_close($enlace);
?>

Ver también


Funciones de dbx
PHP Manual