_id
として通常の整数(MongoInt32)を使用しました 分野。また、MongoInt32はMongoIDと同じではありません。それらは2つの異なるクラスです。次のコマンドで削除することになっています:
$collection->remove( array( '_id' => new MongoInt32(1) ) );
追加情報:
MongoIdは、_id
の値として使用されます しない場合はフィールド 次のように自分で値を設定します:
$collection->insert( array( 'cust_id' => 'abc124' ) );
このドキュメントとvar_dump()を取得すると、次のように表示されます。
array(2) {
'_id' =>
class MongoId#6 (1) {
public $$id =>
string(24) "51ee74e944670a09028d4fc9"
}
'cust_id' =>
string(6) "abc124"
}
ドキュメントのメモは、次のコマンドでそのドキュメントを削除できないことを意味します:
$collection->remove( array( '_id' => '51ee74e944670a09028d4fc9' ) );
ただし、代わりに次を使用する必要があります:
$collection->remove( array( '_id' => new MongoID( '51ee74e944670a09028d4fc9' ) ) );
最後に、new MongoInt32(1)
を実際に使用する必要はないことをお伝えしたいと思います。 そもそも、あなたはただ使うことができます:
$document = array (
'_id' => 1,
'cust_id' => 'abc124'
);
32ビットプラットフォーム(またはWindows)を使用していて、多数を処理する必要がある場合にのみ、MongoInt32/MongoInt64が必要です。