當前位置: 首頁>>代碼示例>>PHP>>正文


PHP ClassMetadata::getIdentifierValue方法代碼示例

本文整理匯總了PHP中Doctrine\ODM\MongoDB\Mapping\ClassMetadata::getIdentifierValue方法的典型用法代碼示例。如果您正苦於以下問題:PHP ClassMetadata::getIdentifierValue方法的具體用法?PHP ClassMetadata::getIdentifierValue怎麽用?PHP ClassMetadata::getIdentifierValue使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在Doctrine\ODM\MongoDB\Mapping\ClassMetadata的用法示例。


在下文中一共展示了ClassMetadata::getIdentifierValue方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: getId

 /** {@inheritdoc} */
 public function getId($object)
 {
     if (!is_a($object, $this->getClass())) {
         throw new MetadataException("Object isn't subclass of '{$this->getClass()}', given '" . (is_object($object) ? get_class($object) : gettype($object)) . "'.");
     }
     if ($this->classMetadata->isEmbeddedDocument) {
         throw new MetadataException("Embedded document '{$this->getClass()}' hasn't ID.");
     }
     $identifier = $this->classMetadata->getIdentifierValue($object);
     return empty($identifier) ? NULL : $identifier;
 }
開發者ID:mike227,項目名稱:n-forms,代碼行數:12,代碼來源:ClassMetadata.php

示例2: scheduleForUpsert

 /**
  * Schedules a document for upsert into the database and adds it to the
  * identity map
  *
  * @param ClassMetadata $class
  * @param object $document The document to schedule for upsert.
  * @throws \InvalidArgumentException
  */
 public function scheduleForUpsert(ClassMetadata $class, $document)
 {
     $oid = spl_object_hash($document);
     if ($class->isEmbeddedDocument) {
         throw new \InvalidArgumentException("Embedded document can not be scheduled for upsert.");
     }
     if (isset($this->documentUpdates[$oid])) {
         throw new \InvalidArgumentException("Dirty document can not be scheduled for upsert.");
     }
     if (isset($this->documentDeletions[$oid])) {
         throw new \InvalidArgumentException("Removed document can not be scheduled for upsert.");
     }
     if (isset($this->documentUpserts[$oid])) {
         throw new \InvalidArgumentException("Document can not be scheduled for upsert twice.");
     }
     $this->documentUpserts[$oid] = $document;
     $this->documentIdentifiers[$oid] = $class->getIdentifierValue($document);
     $this->addToIdentityMap($document);
 }
開發者ID:kevinyien,項目名稱:mongodb-odm,代碼行數:27,代碼來源:UnitOfWork.php


注:本文中的Doctrine\ODM\MongoDB\Mapping\ClassMetadata::getIdentifierValue方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。