dbx_compare
(PHP 4 >= 4.1.0, PHP 5 <= 5.0.4)
dbx_compare -- összehasonlít két sort rendezés céljából
Leírás
int
dbx_compare ( array row_a, array row_b, string column_key [, int flags] )
0-val tér vissza, ha a row_a[$column_key]
egyenlő a row_b[$column_key] kifejezéssel, és
1-gyel, ha az első nagyobb, illetve -1-gyel,
ha ez kisebb. Ha flags értéke
DBX_CMP_DESC, akkor pont fordított értékek adódnak
eltérő bemenetek esetén.
dbx_compare() kisegítő függvény a dbx_sort()
használatához, hogy könnyebben lehessen írni és használni saját definiálású
összehasonlító függvényeket.
A flags használható arra, hogy beállítsuk az
a rendezés irányát:
és az összehasonlítás típusát (milyen típusra konvertálja az értékeket):
DBX_CMP_NATIVE -
típuskonverzió nélkül hasonlítja össze az elemeket
DBX_CMP_NUMBER -
számként hasonlítja össze az elemeket
DBX_CMP_TEXT -
szövegként hasonlítja össze az elemeket
Egy - egy irányra és típusra vonatkozó állandót a logikai VAGY kapcsolattal
lehet kombinálni (|). A
flags paraméter
alapértelmezése a
DBX_CMP_ASC |
DBX_CMP_NATIVE.
Példa 1. dbx_compare() példa
<?php function user_re_order ($a, $b) { $rv = dbx_compare ($a, $b, 'pid', DBX_CMP_DESC); // ha 'pid' szerint nem rendezhetőek sorba, akkor 'id' szerint if (!$rv) { $rv = dbx_compare ($a, $b, 'id', DBX_CMP_NUMBER); } return $rv; }
$link = dbx_connect(DBX_ODBC, "", "db", "username", "password") or die ("Nem sikerült csatlakozni.");
$result = dbx_query($link, "SELECT id, pid, leiras FROM tabla ORDER BY id"); // az eredmény most 'id' szerint van rendezve
dbx_sort ($result, "user_re_order"); // az eredmény most csökkenő 'pid' szerint és azon túl 'id' szerint van rendezve dbx_close ($link); ?>
|
|
Lásd még dbx_sort()!