ホームページ  >  記事  >  バックエンド開発  >  一般的な MongoDB データベース操作の PHP コード

一般的な MongoDB データベース操作の PHP コード

WBOY
WBOYオリジナル
2016-07-25 08:45:301307ブラウズ
  1. $conn = new Mongo();
  2. //
  3. //$conn=new Mongo(); #ローカルホスト、デフォルトポートに接続します
  4. //$ conn= new Mongo(“172.21.15.69″); #リモートホストに接続します
  5. //$conn=new Mongo(”xiaocai.loc:10086″); #指定したポートでリモートホストに接続します
  6. //$ conn=new Mongo("xiaocai.loc",array("replicaSet"=>true)); #負荷分散
  7. //$conn=new Mongo("xiaocai.loc",array("persist"=>") t")); #永続的な接続
  8. //$conn=new Mongo(“mongodb://sa:123@localhost”); #ユーザー名とパスワードを使用
  9. #テストデータベースを選択
  10. $db=$conn-> test;
  11. //$db= $conn->selectDB("test"); #2 番目の書き方
  12. #コレクションを選択 (select "table")
  13. $collection=$db->user; $collection=$db-> selectCollection("user"); #2番目の書き方
  14. #挿入操作
  15. $data=array("uid"=>"zz123","user_name"=>) Zhang San");
  16. $result= $collection->insert($data); #単純な挿入
  17. echo "データ ID を挿入".$data["_id"];
  18. exit;
  19. #挿入操作の安全な挿入
  20. $data=array("uid "=>"zz124","user_name"=>"李思");
  21. $result=$collection->insert($data,true); # MongoDB は操作を完了して、成功したかどうかを判断します (このパラメーターは、大量のレコードが挿入される場合にさらに役立ちます)
  22. #Modification 操作
  23. $where=array("uid"=>"zz123");
  24. $newdata=array("user_name"=>"张三三","tel"=>"123456789");
  25. $result=$collection->update($where,array('$set'= >$newdata));
  26. #更新を置き換えます
  27. $ where=array("uid"=>"zz124");
  28. $newdata=array("user_age"=>"22","tel"=>) ;"123456789");
  29. $result=$collection-> ;update($where,$newdata);
  30. #バッチ更新
  31. $where=array("uid"=>'zz');
  32. $newdata =array("user_name"=>"zz","money"=>1000);
  33. $result=$collection->update($where,array('$set'=>$newdata),array ('multiple'=>true));
  34. # 自動蓄積
  35. $where=array('money'=>1000);
  36. $newdata=array('user_name'=>'edit');
  37. $ result=$collection->update($where,array( '$set'=>$newdata,'$inc'=>array('money'=>-5)));
  38. #Delete node
  39. $where=array('uid'=>' zz124');
  40. $result=$collection->update($where,array('$unset'=>'tel'));//削除node tel
  41. #データを削除
  42. $collection->remove (array('uid'=>'zz124'));
  43. #指定されたMongoIdを削除
  44. $id = new MongoId('4d638ea1d549a02801000011');
  45. $ collection->remove(array('_id'=>( object)$id));
  46. #Query data 注: $gt はより大きいことを意味し、$gte は以上を意味し、$lt はより小さいことを意味します。 $lte は以下を意味し、$ne は等しくない、$exists は存在しません
  47. echo 'count :'.$collection->count()."
    "; #All
  48. echo 'count :'.$collection->count(array('uid'=>'zz123'))."
    "; #条件を追加できます
  49. echo 'count:'.$collection->count( array('age'=>array('$gt'=>10,'$lte'=> ;30)))."
    "; #50 より大きく 74 以下
  50. echo 'count:'.$collection->find()->limit(5)->skip(0)-> ;count(true)."
    "; #実際の結果の数を取得します。返されました
  51. #コレクション内のすべてのドキュメント
  52. $cursor = $collection->find()->snapshot();
  53. foreach ($cursor as $id =>$value) {
  54. echo "$id: " ; var_dump($value);
  55. エコー "
    ";
  56. }
  57. #データの一部をクエリします
  58. $cursor = $collection->findOne();
  59. #falseが表示されない場合は列を除外します
  60. $cursor = $collection->find()->fields(array( "age" =>false,"tel"=>false));
  61. #表示する列 true を指定します
  62. $cursor = $collection->find()->fields(array("user_name"=> true)) ;
  63. #(tel,age ノードが存在します) および age!=0 および age$where=array('tel'=>array('$exists'=>true),'age' => array('$ne'=>0,'$lt'=>50,'$exists'=>true));
  64. $cursor = $collection->find($where);
  65. #Paging 結果セットを取得します
  66. $cursor = $collection->find()->limit(5)->skip(0);
  67. #Sort
  68. $cursor = $collection->find() ->sort (array('age'=>-1,'type'=>1)); #1 は降順を意味します -1 は昇順を意味します、パラメータの順序はソート順序に影響します
  69. #index
  70. $ collection->ensureIndex(array( 'age' => 1,'money'=>-1)); #1 は降順を意味します -1 は昇順を意味します
  71. $collection->ensureIndex(array('age' => 1,'money'=> ;-1),array('background'=>true)); #インデックスの作成はバックグラウンドで実行されます (デフォルトでは同期的に実行されます)
  72. $collection->ensureIndex (array('age' =>1,'money'=>-1),array('unique'=>true)); #このインデックスは一意です
  73. #クエリ結果を取得します
  74. $cursor = $collection->find();
  75. $ array=array();
  76. foreach ($cursor as $id => $value) {
  77. $array[]=$value;
  78. }
  79. #接続を閉じる
  80. $ conn->close()
  81. ?> ;
コードをコピー

MongoDB、PHP


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