Elastica\Type::getMapping PHP Метод

getMapping() публичный Метод

Returns current mapping for the given type.
public getMapping ( ) : array
Результат array Current mapping
    public function getMapping()
    {
        $path = '_mapping';
        $response = $this->request($path, Request::GET);
        $data = $response->getData();
        $mapping = array_shift($data);
        if (isset($mapping['mappings'])) {
            return $mapping['mappings'];
        }
        return [];
    }

Usage Example

Пример #1
0
 /**
  * @group functional
  */
 public function testNoSource()
 {
     $index = $this->_createIndex();
     $type = new Type($index, 'user');
     $mapping = new Mapping($type, array('id' => array('type' => 'integer', 'store' => 'yes'), 'username' => array('type' => 'string', 'store' => 'no')));
     $mapping->setSource(array('enabled' => false));
     $type->setMapping($mapping);
     $mapping = $type->getMapping();
     $this->assertArrayHasKey('user', $mapping);
     $this->assertArrayHasKey('properties', $mapping['user']);
     $this->assertArrayHasKey('id', $mapping['user']['properties']);
     $this->assertArrayHasKey('type', $mapping['user']['properties']['id']);
     $this->assertEquals('integer', $mapping['user']['properties']['id']['type']);
     // Adds 1 document to the index
     $doc1 = new Document(1, array('username' => 'hans', 'test' => array('2', '3', '5')));
     $type->addDocument($doc1);
     // Adds a list of documents with _bulk upload to the index
     $docs = array();
     $docs[] = new Document(2, array('username' => 'john', 'test' => array('1', '3', '6')));
     $docs[] = new Document(3, array('username' => 'rolf', 'test' => array('2', '3', '7')));
     $type->addDocuments($docs);
     // To update index
     $index->refresh();
     $resultSet = $type->search('rolf');
     $this->assertEquals(1, $resultSet->count());
     // Tests if no source is in response except id
     $result = $resultSet->current();
     $this->assertEquals(3, $result->getId());
     $this->assertEmpty($result->getData());
 }
All Usage Examples Of Elastica\Type::getMapping