swish
PHP Manual

SwishSearch->setSort

(PECL swish:0.1-0.3.0)

SwishSearch->setSort — Set the sort order

说明

void SwishSearch->setSort ( string $sort )
Warning

本函数是实验性的。本函数的行为,包括函数名称以及其它任何关于本函数的文档可能会在没有通知的情况下随 PHP 以后的发布而改变。使用本函数风险自担。

参数

sort

Sort order of the results is a string containing name of a result property combined with sort direction ("asc" or "desc"). Examples: "swishrank desc", "swishdocpath asc", "swishtitle asc", "swishdocsize desc", "swishlastmodified desc" etc.

返回值

无返回值。

范例

Example#1 Basic SwishSearch->setSort() example

<?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"); //sort by document size
    
$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";
}

?>

上例的输出类似于:

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


swish
PHP Manual