- $conn = new Mongo();
- //
- //$conn=new Mongo(); #ローカルホスト、デフォルトポートに接続します
- //$ conn= new Mongo(“172.21.15.69″); #リモートホストに接続します
- //$conn=new Mongo(”xiaocai.loc:10086″); #指定したポートでリモートホストに接続します
- //$ conn=new Mongo("xiaocai.loc",array("replicaSet"=>true)); #負荷分散
- //$conn=new Mongo("xiaocai.loc",array("persist"=>") t")); #永続的な接続
- //$conn=new Mongo(“mongodb://sa:123@localhost”); #ユーザー名とパスワードを使用
-
- #テストデータベースを選択
- $db=$conn-> test;
- //$db= $conn->selectDB("test"); #2 番目の書き方
-
- #コレクションを選択 (select "table")
- $collection=$db->user; $collection=$db-> selectCollection("user"); #2番目の書き方
-
- #挿入操作
-
- $data=array("uid"=>"zz123","user_name"=>) Zhang San");
- $result= $collection->insert($data); #単純な挿入
- echo "データ ID を挿入".$data["_id"];
-
- exit;
-
- #挿入操作の安全な挿入
- $data=array("uid "=>"zz124","user_name"=>"李思");
- $result=$collection->insert($data,true); # MongoDB は操作を完了して、成功したかどうかを判断します (このパラメーターは、大量のレコードが挿入される場合にさらに役立ちます)
-
- #Modification 操作
- $where=array("uid"=>"zz123");
- $newdata=array("user_name"=>"张三三","tel"=>"123456789");
- $result=$collection->update($where,array('$set'= >$newdata));
-
- #更新を置き換えます
- $ where=array("uid"=>"zz124");
- $newdata=array("user_age"=>"22","tel"=>) ;"123456789");
- $result=$collection-> ;update($where,$newdata);
-
-
- #バッチ更新
- $where=array("uid"=>'zz');
- $newdata =array("user_name"=>"zz","money"=>1000);
- $result=$collection->update($where,array('$set'=>$newdata),array ('multiple'=>true));
-
- # 自動蓄積
- $where=array('money'=>1000);
- $newdata=array('user_name'=>'edit');
- $ result=$collection->update($where,array( '$set'=>$newdata,'$inc'=>array('money'=>-5)));
-
-
- #Delete node
- $where=array('uid'=>' zz124');
- $result=$collection->update($where,array('$unset'=>'tel'));//削除node tel
-
- #データを削除
- $collection->remove (array('uid'=>'zz124'));
-
- #指定されたMongoIdを削除
- $id = new MongoId('4d638ea1d549a02801000011');
- $ collection->remove(array('_id'=>( object)$id));
-
- #Query data 注: $gt はより大きいことを意味し、$gte は以上を意味し、$lt はより小さいことを意味します。 $lte は以下を意味し、$ne は等しくない、$exists は存在しません
- echo 'count :'.$collection->count()."
"; #All
- echo 'count :'.$collection->count(array('uid'=>'zz123'))."
"; #条件を追加できます - echo 'count:'.$collection->count( array('age'=>array('$gt'=>10,'$lte'=> ;30)))."
"; #50 より大きく 74 以下
- echo 'count:'.$collection->find()->limit(5)->skip(0)-> ;count(true)."
"; #実際の結果の数を取得します。返されました
-
- #コレクション内のすべてのドキュメント
- $cursor = $collection->find()->snapshot();
- foreach ($cursor as $id =>$value) {
- echo "$id: " ; var_dump($value);
- エコー "
";
- }
-
- #データの一部をクエリします
- $cursor = $collection->findOne();
-
- #falseが表示されない場合は列を除外します
- $cursor = $collection->find()->fields(array( "age" =>false,"tel"=>false));
- #表示する列 true を指定します
- $cursor = $collection->find()->fields(array("user_name"=> true)) ;
-
- #(tel,age ノードが存在します) および age!=0 および age$where=array('tel'=>array('$exists'=>true),'age' => array('$ne'=>0,'$lt'=>50,'$exists'=>true));
- $cursor = $collection->find($where);
-
- #Paging 結果セットを取得します
- $cursor = $collection->find()->limit(5)->skip(0);
-
- #Sort
- $cursor = $collection->find() ->sort (array('age'=>-1,'type'=>1)); #1 は降順を意味します -1 は昇順を意味します、パラメータの順序はソート順序に影響します
- #index
- $ collection->ensureIndex(array( 'age' => 1,'money'=>-1)); #1 は降順を意味します -1 は昇順を意味します
- $collection->ensureIndex(array('age' => 1,'money'=> ;-1),array('background'=>true)); #インデックスの作成はバックグラウンドで実行されます (デフォルトでは同期的に実行されます)
- $collection->ensureIndex (array('age' =>1,'money'=>-1),array('unique'=>true)); #このインデックスは一意です
-
-
-
- #クエリ結果を取得します
- $cursor = $collection->find();
- $ array=array();
- foreach ($cursor as $id => $value) {
- $array[]=$value;
- }
-
- #接続を閉じる
- $ conn->close()
- ?> ;
コードをコピー
|