dbx_compare
(PHP 4 >= 4.1.0, PHP 5 <= 5.0.5, PECL dbx >= 1.1.0)
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_CMP_ASC | DBX_CMP_NATIVE
] )dbx_compare() est une fonction d'aide pour dbx_sort(), afin d'aider aux tris.
Liste de paramètres
-
row_a
-
Première ligne
-
row_b
-
Seconde ligne
-
column_key
-
La colonne comparée
-
flags
-
Le paramètre
flags
peut prendre plusieurs valeurs :-
DBX_CMP_ASC
- ordre ascendant -
DBX_CMP_DESC
- ordre descendant
-
DBX_CMP_NATIVE
- pas de conversion de type -
DBX_CMP_TEXT
- compare les lignes comme des chaînes -
DBX_CMP_NUMBER
- compare les lignes comme des nombres
-
Valeurs de retour
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
.
Exemples
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); ?>