count() 공개 메소드

Count docs by query.
또한 보기: Elastica\SearchableInterface::count
public count ( string | array | Query $query = '' ) : integer
$query string | array | Query Array with all query data inside or a Elastica\Query object
리턴 integer number of documents matching the query
예제 #1
0
 /**
  * @group functional
  */
 public function testDeleteDocument()
 {
     $index = $this->_createIndex();
     $type = new Type($index, 'user');
     // Adds hans, john and rolf to the index
     $docs = array(new Document(1, array('username' => 'hans', 'test' => array('2', '3', '5'))), new Document(2, array('username' => 'john', 'test' => array('1', '3', '6'))), new Document(3, array('username' => 'rolf', 'test' => array('2', '3', '7'))));
     $type->addDocuments($docs);
     $index->refresh();
     $document = $type->getDocument(1);
     $this->assertEquals(1, $document->getId());
     $this->assertEquals('hans', $document->get('username'));
     $this->assertEquals(3, $type->count());
     $type->deleteDocument($document);
     $index->refresh();
     try {
         $type->getDocument(1);
         $this->fail('Document was not deleted');
     } catch (NotFoundException $e) {
         $this->assertTrue(true);
         $this->assertEquals(2, $type->count(), 'Documents count in type should be 2');
     }
 }
예제 #2
0
 /**
  * @Testing count
  */
 public function testCount()
 {
     $index = $this->_createIndex();
     $type = new Type($index, 'user');
     // Adds a list of documents with _bulk upload to the index
     $docs = array();
     $docs[] = new Document(2, array('username' => 'rolf', 'test' => array('1', '3', '6')));
     $docs[] = new Document(3, array('username' => 'rolf', 'test' => array('2', '3', '7')));
     $type->addDocuments($docs);
     $index->refresh();
     $resultSet = $type->search('rolf');
     $this->assertEquals(2, $resultSet->count());
     $count = $type->count('rolf');
     $this->assertEquals(2, $count);
     $resultSet = $type->count('rolf', true);
     $this->assertEquals(2, $resultSet->count());
     // Test if source is returned
     $result = $resultSet->current();
     $data = $result->getData();
     $this->assertEquals('rolf', $data['username']);
 }