Пример #1
0
    /**
     * Returns normalization factor for specified documents
     *
     * @param integer $id
     * @param string $fieldName
     * @return float
     */
    public function norm($id, $fieldName)
    {
        $fieldNum = $this->getFieldNum($fieldName);

        if ( !($this->_fields[$fieldNum]->isIndexed) ) {
            return null;
        }

        if (!isset($this->_norms[$fieldNum])) {
            $this->_loadNorm($fieldNum);
        }

        return Zend_Search_Lucene_Search_Similarity::decodeNorm( ord($this->_norms[$fieldNum][$id]) );
    }
Пример #2
0
 /**
  * Returns normalization factor for specified documents
  *
  * @param integer $id
  * @param string $fieldName
  * @return string
  */
 public function norm($id, $fieldName)
 {
     $fieldNum = $this->getFieldNum($fieldName);
     if (!$this->_fields[$fieldNum]->isIndexed) {
         return null;
     }
     if (!isset($this->_norms[$fieldNum])) {
         $fFile = $this->openCompoundFile('.f' . $fieldNum);
         $this->_norms[$fieldNum] = $fFile->readBytes($this->_docCount);
     }
     return Zend_Search_Lucene_Search_Similarity::decodeNorm(ord($this->_norms[$fieldNum][$id]));
 }