Sphinx\SphinxClient::setRankingMode PHP Method

setRankingMode() public method

Set ranking mode
public setRankingMode ( integer $ranker, string $rankexpr = '' ) : SphinxClient
$ranker integer
$rankexpr string
return SphinxClient
    public function setRankingMode($ranker, $rankexpr = '')
    {
        if (!in_array($ranker, array(self::SPH_RANK_PROXIMITY_BM25, self::SPH_RANK_BM25, self::SPH_RANK_NONE, self::SPH_RANK_WORDCOUNT, self::SPH_RANK_PROXIMITY, self::SPH_RANK_MATCHANY, self::SPH_RANK_FIELDMASK, self::SPH_RANK_SPH04, self::SPH_RANK_EXPR, self::SPH_RANK_TOTAL))) {
            throw new \InvalidArgumentException('Ranking mode is invalid.');
        }
        if (!is_string($rankexpr)) {
            throw new \InvalidArgumentException('Ranking expression must be a string.');
        }
        if ($ranker === self::SPH_RANK_EXPR && !$rankexpr) {
            throw new \InvalidArgumentException('Current ranking mode must have a ranking expression.');
        }
        $this->ranker = $ranker;
        $this->rankexpr = $rankexpr;
        return $this;
    }

Usage Example

Example #1
0
 /**
  * @expectedException \InvalidArgumentException
  */
 public function testSetRankingModeWithExpressionRankerWithoutExpressionShouldThrowException()
 {
     $sphinx = new SphinxClient();
     $sphinx->setRankingMode(SphinxClient::SPH_RANK_EXPR);
 }
All Usage Examples Of Sphinx\SphinxClient::setRankingMode