(PHP 4 >= 4.0.6, PHP 5 < 5.1.0, PECL dbx >= 1.1.0)
dbx_sort — Trie un résultat avec une fonction utilisateur
$result
, string $user_compare_function
) : boolTrie un résultat depuis un appel à la fonction dbx_query() avec une fonction de trie personnalisée.
result
Un jeu de résultats retourné par la fonction dbx_query().
user_compare_function
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 ou FALSE
si une erreur survient.
Exemple #1 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.