(PECL swish >= 0.1.0)
SwishSearch::setSort — Establecer el tipo de orden
$sort
)Esta función ha sido declarada EXPERIMENTAL. Su funcionamiento, nombre y la documentación que le acompaña puede cambiar sin previo aviso en futuras versiones de PHP. Utilícela bajo su propia responsabilidad.
sort
El orden de clasificación de los resultados es una cadena que contiene nombre de un resultado propiedad combinado con la dirección de ordenación ("asc" o "desc"). Ejemplos: "swishrank desc", "swishdocpath asc", "swishtitle asc", "swishdocsize desc", "swishlastmodified desc" etc.
No devuelve ningún valor.
Ejemplo #1 Ejemplo básico de SwishSearch::setSort()
<?php
try {
$swish = new Swish("index.swish-e");
$search = $swish->prepare();
$results = $search->execute("time");
echo "First query found: ", $results->hits, " hits\n";
$i = 0;
while($result = $results->nextResult()) {
echo "Hit #", ++$i, " - ", $result->swishdocsize, " bytes\n";
}
$search->setSort("swishdocsize desc"); //ordenar por tamaño del documento
$results = $search->execute("time");
echo "Second query found: ", $results->hits, " hits\n";
$i = 0;
while($result = $results->nextResult()) {
echo "Hit #", ++$i, " - ", $result->swishdocsize, " bytes\n";
}
} catch (SwishException $e) {
echo $e->getMessage(), "\n";
}
?>
El resultado del ejemplo sería algo similar a:
First query found: 5 hits Hit #1 - 4261 bytes Hit #2 - 37937 bytes Hit #3 - 7126 bytes Hit #4 - 15427 bytes Hit #5 - 4768 bytes Second query found: 5 hits Hit #1 - 37937 bytes Hit #2 - 15427 bytes Hit #3 - 7126 bytes Hit #4 - 4768 bytes Hit #5 - 4261 bytes