ホームページ  >  記事  >  バックエンド開発  >  phpマスターに聞く! mongodb アプリケーションに関する質問

phpマスターに聞く! mongodb アプリケーションに関する質問

WBOY
WBOYオリジナル
2016-06-13 13:43:47799ブラウズ

php の専門家に助けを求めてください。 mongodbのアプリについて!
mongodb の特定のライブラリに ID のセットがあり、その元のデータは db.ids.insert({'name':'user','id':0})
以下の方法で実装してください。IDは自己増加します。コードは次のとおりです。

PHP コード
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->
public static function autoId($name, $db){
    $update = array('$inc'=>array('id'=>1));
    $query = array('name'=>$name);
    $command = array('findAndModify'=>'ids', 'update'=>$update,'query'=>$query, 'new'=>true);
    echo json_encode($command)."<br/>";//输出1
    $id = $db->command($command);
    echo json_encode($id)."<br/>";//输出2
    return $id['value']['id'];
}



このメソッドを呼び出しても目的は達成されません。出力結果は次のとおりです:
出力 1: {"findAndModify":"ids","update":{"$inc":{"id":1}},"query":{"name":"user " },"new":true}
出力 2: {"errmsg":"そのような cmd はありません","bad cmd":{"findAndModify":"ids","update":{"$inc": { "id":1}},"query":{"name":"user"},"new":true},"ok":0}

何が起こっているのですか? mongoのバージョンの問題でしょうか?

-----解決策--------------------------------
私は mongodb を使用したことがありません。どういう状況なのか分かりません。
------解決策------------------
mongodb のバージョンは何ですか?
http://www.mongodb.org/display/DOCS/findAndModify+Command

ドキュメントを見ると、v1.3 以降でのみサポートされています
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。