本文整理匯總了PHP中Elastica\Document::hasVersion方法的典型用法代碼示例。如果您正苦於以下問題:PHP Document::hasVersion方法的具體用法?PHP Document::hasVersion怎麽用?PHP Document::hasVersion使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Elastica\Document
的用法示例。
在下文中一共展示了Document::hasVersion方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: testUpdateDocumentWithFieldsSource
/**
* @group functional
*/
public function testUpdateDocumentWithFieldsSource()
{
$this->_checkScriptInlineSetting();
$client = $this->_getClient();
$index = $client->getIndex('elastica_test');
$type = $index->getType('update_type');
$client->setConfigValue('document', array('autoPopulate' => true));
$newDocument = new Document(null, array('counter' => 5, 'name' => 'Batman'));
$this->assertFalse($newDocument->hasVersion());
$response = $type->addDocument($newDocument);
$responseData = $response->getData();
$this->assertTrue($newDocument->hasVersion());
$this->assertArrayHasKey('_version', $responseData, '_version is missing in response data it is weird');
$this->assertEquals(1, $responseData['_version']);
$this->assertEquals($responseData['_version'], $newDocument->getVersion());
$this->assertTrue($newDocument->hasId());
$script = new Script('ctx._source.counter += count; ctx._source.realName = realName');
$script->setId($newDocument->getId());
$script->setParam('count', 7);
$script->setParam('realName', 'Bruce Wayne');
$script->setUpsert($newDocument);
$newDocument->setFieldsSource();
$response = $type->updateDocument($script);
$responseData = $response->getData();
$data = $type->getDocument($newDocument->getId())->getData();
$this->assertEquals(12, $data['counter']);
$this->assertEquals('Batman', $data['name']);
$this->assertEquals('Bruce Wayne', $data['realName']);
$this->assertTrue($newDocument->hasVersion());
$this->assertArrayHasKey('_version', $responseData, '_version is missing in response data it is weird');
$this->assertEquals(2, $responseData['_version']);
$document = $type->getDocument($newDocument->getId());
}