關(guān)于使用coreseek并為其做分頁的介紹
更新時間:2013年06月21日 12:06:06 作者:
本篇文章是對使用coreseek并為其做分頁進行了詳細的分析介紹,需要的朋友參考下
coreseek 做分頁時找數(shù)據(jù)總量還真不好找。以為他會給一個方法(函數(shù))什么的去獲取,結(jié)果卻不是。
首先需要了解:
num_matches: 當前返回的結(jié)果數(shù),<= limit設(shè)置值。
max_matches: 最多返回的結(jié)果數(shù),默認為1000,用戶最多只能看到1000條搜索結(jié)果。這個是在csft_mysql.conf中設(shè)置的。
total_found: 結(jié)果總數(shù)。索引中所有滿足查詢條件的文檔總數(shù)。這個是在你查詢的返回結(jié)果中的數(shù)組中有的。當然前提是你必須在query前設(shè)置:$this->sc->SetArrayResult(true);
total: 最多返回結(jié)果數(shù),取值取決于max_matches值和total_found值。如果total_found數(shù)超過max_matches,則total = max_matches,否則,total = total_found。這個也是在你查詢的返回結(jié)果中的數(shù)組中有的。當然前提也是你必須在query前設(shè)置:$this->sc->SetArrayResult(true);
這樣,了解了這幾個屬性之后就可以做分頁了。
我們應(yīng)該使用返回值中的total來做分頁總數(shù)據(jù)。雖然這個不代表真實的返回值(當返回值大于max_matches,也就是1000,如真實返回2500,但是你卻只能得到1000)。
代碼是:
$this->sc->SetServer("127.0.0.1",9312);
$this->sc->SetArrayResult(true);
$this->sc->SetLimits($start,$page);
//如果需要搜索指定全文字段的內(nèi)容,可以使用擴展匹配模式:
$this->sc->SetMatchMode(SPH_MATCH_ANY);
$res = $this->sc->Query($where,"main");
$count = $res['total'];
這個¥count就是我們要的分頁的總數(shù)據(jù)了。
其他的后續(xù)怎么分頁是以樣式和數(shù)據(jù)結(jié)構(gòu)做的,不能雷同,并且分頁也是基礎(chǔ)的東西,所以這里就不再多說分頁的詳細問題了。我這里單單討論這個總數(shù)據(jù)的取值情況。因為很多人都取count($res['matches'])的值,但是這個是分頁后的返回結(jié)果,你只能得到10,或者20或者其他的值。呵呵,那就搞笑了。
首先需要了解:
num_matches: 當前返回的結(jié)果數(shù),<= limit設(shè)置值。
max_matches: 最多返回的結(jié)果數(shù),默認為1000,用戶最多只能看到1000條搜索結(jié)果。這個是在csft_mysql.conf中設(shè)置的。
total_found: 結(jié)果總數(shù)。索引中所有滿足查詢條件的文檔總數(shù)。這個是在你查詢的返回結(jié)果中的數(shù)組中有的。當然前提是你必須在query前設(shè)置:$this->sc->SetArrayResult(true);
total: 最多返回結(jié)果數(shù),取值取決于max_matches值和total_found值。如果total_found數(shù)超過max_matches,則total = max_matches,否則,total = total_found。這個也是在你查詢的返回結(jié)果中的數(shù)組中有的。當然前提也是你必須在query前設(shè)置:$this->sc->SetArrayResult(true);
這樣,了解了這幾個屬性之后就可以做分頁了。
我們應(yīng)該使用返回值中的total來做分頁總數(shù)據(jù)。雖然這個不代表真實的返回值(當返回值大于max_matches,也就是1000,如真實返回2500,但是你卻只能得到1000)。
代碼是:
復(fù)制代碼 代碼如下:
$this->sc->SetServer("127.0.0.1",9312);
$this->sc->SetArrayResult(true);
$this->sc->SetLimits($start,$page);
//如果需要搜索指定全文字段的內(nèi)容,可以使用擴展匹配模式:
$this->sc->SetMatchMode(SPH_MATCH_ANY);
$res = $this->sc->Query($where,"main");
$count = $res['total'];
這個¥count就是我們要的分頁的總數(shù)據(jù)了。
其他的后續(xù)怎么分頁是以樣式和數(shù)據(jù)結(jié)構(gòu)做的,不能雷同,并且分頁也是基礎(chǔ)的東西,所以這里就不再多說分頁的詳細問題了。我這里單單討論這個總數(shù)據(jù)的取值情況。因為很多人都取count($res['matches'])的值,但是這個是分頁后的返回結(jié)果,你只能得到10,或者20或者其他的值。呵呵,那就搞笑了。
您可能感興趣的文章:
- Yii使用CLinkPager分頁實例詳解
- Yii2分頁的使用及其擴展方法詳解
- Yii列表定義與使用分頁方法小結(jié)(3種方法)
- Yii1.1中通過Sql查詢進行的分頁操作方法
- yii使用bootstrap分頁樣式的實例
- yii2實現(xiàn)分頁,帶搜索的分頁功能示例
- Yii框架結(jié)合sphinx,Ajax實現(xiàn)搜索分頁功能示例
- YII框架中搜索分頁jQuery寫法詳解
- Yii2.0小部件GridView(兩表聯(lián)查/搜索/分頁)功能的實現(xiàn)代碼
- Yii 2.0實現(xiàn)聯(lián)表查詢加搜索分頁的方法示例
- yii框架搜索分頁modle寫法
- Yii框架引入coreseek分頁功能示例
相關(guān)文章
PHP備份數(shù)據(jù)庫生成SQL文件并下載的函數(shù)代碼
這是一個將指定數(shù)據(jù)庫里的所有表備份為一個SQL文件,可下載。這個源碼來自dedecms程序,功能挺多,也很實用,但是代碼的質(zhì)量還有待提高2012-02-02