@@ 305-326 (lines=22) @@ | ||
302 | * @param mixed $document_or_id |
|
303 | * @return array Returns a database reference array. |
|
304 | */ |
|
305 | public function createDBRef($collection, $document_or_id) |
|
306 | { |
|
307 | if ($document_or_id instanceof \MongoId) { |
|
308 | $id = $document_or_id; |
|
309 | } elseif (is_object($document_or_id)) { |
|
310 | if (! isset($document_or_id->_id)) { |
|
311 | return null; |
|
312 | } |
|
313 | ||
314 | $id = $document_or_id->_id; |
|
315 | } elseif (is_array($document_or_id)) { |
|
316 | if (! isset($document_or_id['_id'])) { |
|
317 | return null; |
|
318 | } |
|
319 | ||
320 | $id = $document_or_id['_id']; |
|
321 | } else { |
|
322 | $id = $document_or_id; |
|
323 | } |
|
324 | ||
325 | return MongoDBRef::create($collection, $id, $this->name); |
|
326 | } |
|
327 | ||
328 | ||
329 | /** |
@@ 603-624 (lines=22) @@ | ||
600 | * @param array|object $document_or_id Object to which to create a reference. |
|
601 | * @return array Returns a database reference array. |
|
602 | */ |
|
603 | public function createDBRef($document_or_id) |
|
604 | { |
|
605 | if ($document_or_id instanceof \MongoId) { |
|
606 | $id = $document_or_id; |
|
607 | } elseif (is_object($document_or_id)) { |
|
608 | if (! isset($document_or_id->_id)) { |
|
609 | return null; |
|
610 | } |
|
611 | ||
612 | $id = $document_or_id->_id; |
|
613 | } elseif (is_array($document_or_id)) { |
|
614 | if (! isset($document_or_id['_id'])) { |
|
615 | return null; |
|
616 | } |
|
617 | ||
618 | $id = $document_or_id['_id']; |
|
619 | } else { |
|
620 | $id = $document_or_id; |
|
621 | } |
|
622 | ||
623 | return MongoDBRef::create($this->name, $id); |
|
624 | } |
|
625 | ||
626 | /** |
|
627 | * Fetches the document pointed to by a database reference |