|
MongoCollection::findAndModifyドキュメントを更新して返す 説明
public array MongoCollection::findAndModify
( array
$query
[, array $update
[, array $fields
[, array $options
]]] )findAndModify コマンドは、単一のドキュメントをアトミックに変更して返します。 デフォルトでは、返されるドキュメントには、この更新による変更内容が含まれません。 更新で変更した結果のドキュメントを返すには、new オプションを使います。 パラメータ
返り値元のドキュメントを返します。 new が設定されている場合は変更後のドキュメントを返します。 エラー / 例外失敗した場合に MongoResultException をスローします。 例例1 MongoCollection::findAndModify の例
<?php上の例の出力は、 たとえば以下のようになります。
array(6) {
["_id"]=>
object(MongoId)#7 (1) {
["$id"]=>
string(24) "5091b5b244415e8cc3000002"
}
["inprogress"]=>
bool(true)
["name"]=>
string(10) "Biz report"
["priority"]=>
int(2)
["started"]=>
object(MongoDate)#8 (2) {
["sec"]=>
int(1351726514)
["usec"]=>
int(925000)
}
["tasks"]=>
array(2) {
[0]=>
string(20) "run marketing report"
[1]=>
string(12) "email report"
}
}
例2 MongoCollection::findAndModify のエラー処理
<?php上の例の出力は、 たとえば以下のようになります。
13097 : exception: Unsupported projection option: $pop
array(3) {
["errmsg"]=>
string(46) "exception: Unsupported projection option: $pop"
["code"]=>
int(13097)
["ok"]=>
float(0)
}
参考
|