(PECL mongo >=0.9.0)
MongoDB::createDBRef — データベース参照を作成する
このメソッドは、データベース参照を作るための柔軟なインターフェイスです (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);
?>