Я написал поисковик индекса в Lucene, который будет искать несколько полей в индексированной базе данных.
Я написал следующий код.
public function actionInd(){
$index = Lucene::open(Yii::$app->basePath."/search");
$res = $index->find('name:pr AND id:2');
foreach ($res as $hit){
$document = $hit->getDocument();
echo "<br>";echo "<br>";
print_r($document->getFieldValue('id'));
echo "<br>";
print_r($document->getFieldValue('name'));
}
}
public function actionCreate(){
$index = Lucene::open(Yii::$app->basePath."/search");
$doc = new Document();
$doc->addField(Field::Text('id', 3));
$doc->addField(Field::Text('name', 'pr'));
$doc->addField(Field::Text('title', 'prajapati'));
$doc->addField(Field::keyword('key', 3));
$index->addDocument($doc);
}
когда вывод действия call ind показывает: 1 pr И условие не работает.