dbx_compare
(PHP 4 >= 4.1.0, PHP 5)
dbx_compare -- Compare deux lignes DBX afin de les trier
Description
int
dbx_compare ( array row_a, array row_b, string column_key [, int flags] )
dbx_compare() retourne 0 si
row_a[$column_key] est égale à
row_b[$column_key], et 1 ou
-1 si le premier est plus grand ou plus petit que le
dernier, respectivement, ou bien le contraire si l'option
flags est configurée à DBX_CMP_DESC.
dbx_compare() est une fonction d'aide pour
dbx_sort(), afin d'aider aux tris.
Le paramètre flags peut prendre plusieurs valeurs :
et le type utilisé pour la comparaison :
DBX_CMP_NATIVE - par de conversion de type
DBX_CMP_TEXT - compare les lignes comme des chaînes
DBX_CMP_NUMBER - compare les lignes comme des nombres
Une direction de tri et un type de comparaison peuvent être combinés
avec l'opérateur OR (|). La valeur par défaut pour l'option
flags est
DBX_CMP_ASC
|
DBX_CMP_NATIVE.
Exemple 1. Exemple avec 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; }
$link = dbx_connect (DBX_ODBC, "", "db", "username", "password") or die ("Impossible de se connecter");
$result = dbx_query ($link, "SELECT id, parentid, description FROM table ORDER BY id"); // les données de $result sont désormais classées par id
dbx_sort ($result, "user_re_order"); // la date dans $result est maintenant ordonnée par parentid (descending), puis par id
dbx_close ($link); ?>
|
|
Voir aussi
dbx_sort().