(PHP 4 >= 4.0.6, PHP 5 <= 5.0.5, PECL dbx:1.1.0)
dbx_sort — Trie un résultat avec une fonction utilisateur
Trie un résultat depuis un appel à la fonction dbx_query() avec une fonction de trie personnalisée.
Un jeu de résultats retourné par la fonction dbx_query() .
La fonction de comparaison définie par l'utilisateur. Elle doit accepter deux arguments et retourner un entier, inférieur à , égal à , ou supérieur à 0 si le premier argument est considéré comme, respectivement, inférieur à , égal à ou supérieur au second.
Cette fonction retourne TRUE en cas de succès, FALSE en cas d'échec.
Exemple 640. Exemple avec 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(
"Impossible de se connecter"
);
$result
=
dbx_query
(
$link
,
"SELECT id, parentid, description FROM tbl ORDER BY id"
);
// Les données sont maintenant triées par id
dbx_sort
(
$result
,
"user_re_order"
);
// Les données sont maintenant triées par parentid décroissant, puis par id
dbx_close
(
$link
);
?>
Note: Il est toujours plus intéressant d'utiliser la clause SQL ORDER BY que la fonction dbx_sort() , si possible.
dbx_compare() |