>  기사  >  백엔드 개발  >  일반적인 MongoDB 데이터베이스 작업 PHP 코드

일반적인 MongoDB 데이터베이스 작업 PHP 코드

WBOY
WBOY원래의
2016-07-25 08:45:301330검색
  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 "); #아니요. 두 가지 쓰기 방법
  12. #컬렉션 선택("테이블" 선택)
  13. $collection=$db->user;
  14. //$collection=$db-> ;selectCollection("user") ; #두 번째 작성 방법
  15. #삽입 연산
  16. $data=array("uid"=>"zz123","user_name"=> "Zhang San");
  17. $result=$collection->insert($data); #간단한 삽입
  18. echo "데이터 ID 삽입".$data["_id"];
  19. 종료;
  20. #삽입 작업 안전 삽입
  21. $data=array("uid"=>"zz124","user_name"=>"lee思");
  22. $result=$ collection->insert($ data,true); # MongoDB가 작업을 완료하여 성공 여부를 확인하는 데 사용됩니다. (이 매개변수는 많은 수의 레코드가 삽입될 때 더 유용합니다.)
  23. #작업 수정
  24. $where=array(" uid"=>"zz123");
  25. $newdata=array("user_name"=>"Zhang Sansan","tel"=>"123456789 ");
  26. $result=$collection- >update($where,array('$set'=>$newdata));
  27. #교체 업데이트
  28. $where=array( "uid"=>"zz124");
  29. $newdata=array("user_age"=>"22","tel"=>"123456789");
  30. $result=$collection-> ;update($where,$newdata);
  31. #일괄 업데이트
  32. $where=array("uid"=>'zz');
  33. $newdata=array(" user_name"=>"zz","money" =>1000);
  34. $result=$collection->update($where,array('$set'=>$newdata),array(' multiple'=>true));
  35. #자동 누적
  36. $where=array('money'=>1000);
  37. $newdata=array('user_name'=>' edit');
  38. $result=$collection ->update($where,array('$set'=>$newdata,'$inc'=>array('money'=>-5) ));
  39. #노드 삭제
  40. $where=array('uid'=>'zz124');
  41. $result=$collection->update($where, array('$unset'=>'tel' ));//노드 삭제 tel
  42. #데이터 삭제
  43. $collection->remove(array('uid'=>'zz124' ));
  44. #지정된 MongoId 삭제
  45. $id = new MongoId('4d638ea1d549a02801000011');
  46. $collection->remove(array('_id'=>(object)$id ));
  47. #쿼리 데이터 참고: $gt는 보다 큼, $gte는 크거나 같음, $lt는 작음, $lte는 작거나 같음, $ne는 같지 않음을 의미합니다. , $exists가 존재하지 않습니다
  48. echo 'count:'.$collection->count( )."
    " #All
  49. echo 'count:'.$collection->count(array ('uid'=>'zz123'))."
    "; #예
  50. echo 'count:'.$collection->count(array('age'=>array) 조건을 추가합니다. ('$gt'=>10,'$lte'=>30))). "
    " #50보다 크고 74보다 작거나 같습니다
  51. echo 'count:'.$ collection->find()->limit(5)->skip(0)->count(true )."
    " # 반환된 결과의 실제 개수 가져오기
  52. #컬렉션의 모든 문서
  53. $cursor = $collection->find()->snapshot();
  54. foreach ($cursor as $id => $value) {
  55. echo "$ id: "; var_dump($value);
  56. echo "
    ";
  57. }
  58. #데이터 쿼리
  59. $cursor = $collection->findOne();
  60. #false가 표시되지 않으면 열 제외
  61. $cursor = $collection ->find ()->fields(array("age"=>false,"tel"=>false));
  62. #표시하려면 true 열을 지정하세요
  63. $cursor = $collection-> ;find() ->fields(array("user_name"=>true));
  64. #(tel,age 노드가 있음) 및 age!=0 및 age<50
  65. $where= array('tel'=>array('$exists'=>true),'age'=>array('$ne'=>0,'$lt'=>50,'$exists' =>true ));
  66. $cursor = $collection->find($where);
  67. #페이징으로 결과 집합 가져오기
  68. $cursor = $collection->find( )->limit( 5)->skip(0);
  69. #Sort
  70. $cursor = $collection->find()->sort(array('age'=> ;-1,'type'=>1)); #1은 내림차순을 의미합니다. -1은 오름차순을 의미하며, 매개변수의 순서는 정렬 순서에 영향을 미칩니다.
  71. #index
  72. $collection->ensureIndex(array( 'age' => 1,'money'=>-1)); #1은 내림차순을 의미하고 -1은 오름차순을 의미합니다
  73. $collection->ensureIndex(array('age' => 1,' Money'=>-1),array(' background'=>true)); #인덱스 생성은 백그라운드에서 실행됩니다(기본값은 동기적으로 실행되는 것입니다)
  74. $collection->ensureIndex(array(' age' => 1,'money'=>- 1),array('unique'=>true)) #이 인덱스는 고유합니다
  75. #쿼리 결과 가져오기
  76. $cursor = $collection->find( );
  77. $array=array();
  78. foreach ($cursor as $id => $value) {
  79. $array[]= $value;
  80. }
  81. #연결 닫기
  82. $conn->close()
  83. ?>
코드 복사

몽고DB, PHP


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.