dbx_compare
(PHP 4 >= 4.0.7, PHP 5 <= 5.0.5, PECL dbx:1.1.0)
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:
- DBX_CMP_ASC - növekvÅ‘ sorrendet Ãr elÅ‘
- DBX_CMP_DESC - csökkenÅ‘ sorrendet Ãr elÅ‘
- 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
Example#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()!