W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
出于性能考慮,搜索結(jié)果的匹配數(shù)量均被設(shè)計(jì)為估算值,并非準(zhǔn)確值。
這個(gè)數(shù)量是真實(shí)準(zhǔn)確的,并非估算,獲取總量有以下兩種做法,至于喜歡用哪種您自己決定。
調(diào)用方法 XSSearch::getDbTotal
讀取魔術(shù)屬性 XSSearch::dbTotal,內(nèi)部也是調(diào)用上述方法
$total = $search->dbTotal;
$total = $search->getDbTotal();
通過(guò) XSSearch::getLastCount 或 XSSearch::lastCount 可以快速獲取到最近一次調(diào)用 XSSearch::search 進(jìn)行搜索時(shí)得到的匹配數(shù)量。
除非您對(duì)搜索結(jié)果完全不關(guān)心,否則強(qiáng)烈建議用這種方法獲取匹配數(shù)目以減少系統(tǒng)開(kāi)銷。
// 假設(shè)曾經(jīng)有一次 search 調(diào)用
$docs = $search->setQuery('測(cè)試')->setLimit(5)->search();
// 必須在 search() 之后調(diào)用
$count = $search->lastCount;
$count = $search->getLastCount();
通過(guò) XSSearch::count 調(diào)用可以直接獲取搜索的匹配數(shù)量,該方法和 XSSearch::search 類似,在調(diào)用前可以做一系列的搜索查詢語(yǔ)句構(gòu)建,也可以直接接受查詢語(yǔ)句做參數(shù)。
返回值是一個(gè)整型數(shù)字,是估算值。
// 先設(shè)置 Query 再獲取數(shù)量
$count = $search->setQuery('神雕俠侶 -電視劇')->count();
// 直接把 Query 語(yǔ)句傳入
$count = $search->count('杭州 西湖');
Tip: 對(duì)于不帶參數(shù)的
count
調(diào)用建議放在search
之后,內(nèi)部會(huì)進(jìn)行優(yōu)化,減少一次查詢。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: