次の場所を参照してください http://docs.mongodb.org/manual/tutorial/create-an-auto-incrementing-field/
指定された URL (上記) には、PHP に変換された Java スクリプトの自動インクリメント ロジックのサンプル コードがあります (以下のコードを提供しました) - エラーが発生しないようにすることはできません。変換で間違ったところを誰かが修正できますか?
<?php
function getNextSequence($name) {
global $db;
$ret = $db->counters->findAndModify(
array(
'query'=>array( '_id'=>name),
'update'=>array( '$inc'=>
array('seq'=> 1) ),
'new'=>'true'
)
);
return $ret->seq;
}
$db = new MongoClient();
$db = $db->test;
$db->counters->insert(
array(
'_id'=>"userid",
'seq'=>0
)
);
$db->users->insert(
array(
'_id'=> getNextSequence("userid"),
'name'=> "Sarah C."
)
);
$db->users->insert(
array(
'_id'=> getNextSequence("userid"),
'name'=> "Bob D."
)
);
$ret = $db->users->find();
print_r($ret);
?>
PHP 通知: 未定義の定数名の使用 - 6 行目の C:\php\seq.php で 'name' と見なされますphp:10 スタック トレース: #0 C:\php\seq.php(10): MongoCollection->findAndModify(Array) #1 C:\php\seq.php(25): getNextSequence('userid') #2 { main} が C:\php\seq.php の 10 行目にスローされる