MongoDB::createDBRef
(PECL mongo >=0.9.0)
MongoDB::createDBRef — データベース参照を作成する
説明
public MongoDB::createDBRef
( string $collection
, mixed $document_or_id
) : array
このメソッドは、データベース参照を作るための柔軟なインターフェイスです (MongoDBRef を参照ください)。
パラメータ
collection
- データベース参照が指すコレクション。
document_or_id
- 配列あるいはオブジェクトを渡した場合は、その
_id
フィールドを参照 ID として利用します。 MongoId あるいはスカラーを渡した場合は、 それ自体を参照 ID として利用します。
返り値
データベース参照配列を返します。
_id
フィールドがない配列を
document_or_id
に渡した場合は、null
を返します。
例
例1 MongoDB::createDBRef() の例
この例は、ドキュメントからデータベース参照配列を作成する方法を示します。
<?php$articles = $db->articles;$article = array( 'title' => 'Test article', 'description' => 'Test article description');$articles->insert($article);$ref = $db->createDBRef('articles', $article);print_r($article);print_r($ref);?>
上の例の出力は、 たとえば以下のようになります。
Array ( [title] => Test article [description] => Test article description [_id] => MongoId Object ( ) ) Array ( [$ref] => articles [$id] => MongoId Object ( ) )
これで、別のドキュメントに $ref を格納して、それを後から MongoDB::getDBRef() や MongoCollection::getDBRef() で取得できるようになりました。
例2 MongoDB::createDBRef() の例
この例は、id からデータベース参照配列を作成する方法を示します。
<?php$id = new MongoId('47cc67093475061e3d9536d2');$ref = $db->createDBRef('articles', $id);?>