Heim >Datenbank >MySQL-Tutorial >Einführung in die Verwendung von Mongodb und PHP (Codebeispiel)
Dieser Artikel bietet Ihnen eine Einführung in die Verwendung von Mongodb und PHP (Codebeispiele). Ich hoffe, dass er für Freunde hilfreich ist.
Mognodb-Datenbankverbindung.
Standardformat
$m = new Mongo(); //这里采用默认连接本机的27017端口,当然也可以连接远程主机如 192.168.0.4:27017,如果端口是27017,端口可以省略。
Standardverbindung
$m = new Mongo("mongodb://${username}:${password}@localhost");
Instanz:
$m = new Mongo("mongodb://127.0.0.1:27017/admin:admin");
Der Benutzername und das Passwort des Datenbanken sind beide Administratoren
Datenbankbetrieb
Daten einfügen
<?php //这里采用默认连接本机的27017端口,当然你也可以连接远程主机如192.168.0.4:27017 //如果端口是27017,端口可以省略 $m = new Mongo("mongodb://127.0.0.1:27017/admin:admin"); //选择comedy数据库,如果以前没该数据库会自动创建,也可以用$m->selectDB("comedy"); $db = $m->comedy; //选择comedy里面的collection集合,相当于RDBMS里面的表,也可以使用 $collection = $db->collection; $db->selectCollection("collection"); /*********添加一个元素**************/ $obj = array("title" => "php1", "author" => "Bill Watterson"); //将$obj 添加到$collection 集合中 $collection->insert($obj); /*********添加另一个元素**************/ $obj = array("title" => "huaibei", "online" => true); $collection->insert($obj); //$query = array("title" => "huaibei"); $query = array( "_id" => $obj['_id'] ); $cursor = $collection->find($query); //遍历所有集合中的文档 foreach ($cursor as $obj) { echo $obj["title"] . "\n"; echo $obj["_id"] . "\n"; } //断开MongoDB连接 $m->close();
Bedingte Abfrage
mysql: id = 123 mongo: array(‘id’=>123) mysql: name link ’%bar%’ mongo: array(‘name’ => new MongoRegex(‘/.*bar.*/i’)) mysql: where id > 10 mongo: array(‘id’ => array(‘$gt’ => 10)) mysql: where id >= 10 mongo: array(‘id’ => array(‘$gte’ => 10)) mysql: where id < 10 mongo: array(‘id’ => array(‘$lt’ => 10)) mysql: where id <= 10 mongo: array(‘id’ => array(‘$lte’ => 10)) mysql: where id > 1 and id < 10 mongo: array(‘id’ => array(‘$gt’ => 1,’$lt’ => 10)) mysql: where id <> 10 mongo: array(‘id’ => array(‘$ne’ => 10)) mysql: where id in(123) mongo: array(‘id’ => array(‘$in’ => array(1,2,3))) mysql: where id not in(123) mongo: array(‘id’ => array(‘$nin’ => array(1,2,3))) mysql: where id = 2 or id = 9 mongo: array(‘id’ => array(‘$or’ => array(array(‘id’=>2),array(‘id’=>9)))) mysql: order by name asc mongo: array(‘sort’=>array(‘name’=>1)) mysql: order by name desc mongo: array(‘sort’=>array(‘name’=>-1)) mysql: limit 0,2 mongo: array(‘limit’=>array(‘offset’=>0,’rows’=>2)) mysql: select name,email mongo: array(‘name’,'email’) mysql: select count(name) mongo: array(‘COUNT’) //注意:COUNT为大写
Bei der Abfrage generiert jedes Objekt automatisch ein eindeutiges_, wenn es eingefügt wird . id, das dem Primärschlüssel in RDBMS entspricht, ist sehr praktisch für Abfragen (_id ist für jeden unterschiedlich, ähnlich wie eine automatisch erhöhte ID)
<?php $param = array("name" => "joe"); $collection->insert($param); $joe = $collection->findOne(array("_id" => $param['_id'])); print_R($joe); $m->close();
Rückgabeergebnis: Array ( [_id] => ; MongoId Object ( [$id] => 4fd30e21870da83416000002 ) [name] => joe )
Feldwert ändern
<?php $sign = array("title" => 'php1'); $param = array("title" => 'php1','author'=>'test'); $joe = $collection->update($sign, $param);
Eine Datenbank löschen
$m -> dropDB(“comedy”);
Alle verfügbaren auflisten Datenbanken
$m->listDBs(); //无返回值
Erstellen Sie ein MongoDB-Objekt
<?php $mo = new Mongo(); $db = new MongoDB($mo,’dbname’);//通过创建方式获得一个MongoDB对象
Löschen Sie die aktuelle Datenbank
<?php $db = $mo->dbname; $db->drop();
Rufen Sie den aktuellen Datenbanknamen ab
<?php $db = $mo->dbname; $db->_tostring();
Wählen Sie die gewünschte Sammlung aus:
//A: $mo = new Mongo(); $coll = $mo->dbname->collname;//获得一个collection对象 //B: $db = $mo->selectDB(’dbname’); $coll = $db->collname; //C: $db = $mo->dbname; $coll = $db->collname; //D: $db = $mo->dbname; $coll = $db->selectCollectoin(’collname’);//获得一个collection对象
Daten einfügen (MongoCollection-Objekt
$coll = $mo->db->foo; $a = array(’a’=>’b’); $options = array(’safe’=>true); $rs =$coll->insert($a,$options);
Datensätze in der Datenbank löschen (MongoCollection-Objekt)
$coll = $mo->db->coll; $c = array(’a’=>1,’s’=>array(’$lt’=>100)); $options = array(’safe’=>true); $rs = $coll->remove($c,$options);
Datensätze in der Datenbank aktualisieren (MongoCollection-Objekt)
$coll = $mo->db->coll; $c = array(’a’=>1,’s’=>array(’$lt’=>100)); $newobj = array(’e’=>’f’,’x’=>’y’); $options = array(’safe’=>true,’multiple’=>true); $rs = $coll->remove($c,$newobj,$options);
Fragen Sie die ab Sammlung, um einen einzelnen Datensatz zu erhalten (MongoCollection-Klasse)
$coll = $mo->db->coll; $query = array(’s’=>array(’$lt’=>100)); $fields = array(’a’=>true,’b’=>true); $rs = $coll->findOne($query,$fields);
Fragen Sie die Sammlung ab, um mehrere Datensätze zu erhalten (MongoCollection-Klasse)
$coll = $mo->db->coll; $query = array(’s’=>array(’$lt’=>100)); $fields = array(’a’=>true,’b’=>true); $cursor = $coll->find($query,$fields); //排序 $cursor->sort(array(‘字段’=>-1));(-1倒序,1正序) //跳过部分记录 $cursor->skip(100);跳过100行 //只显示部分记录 $cursor->limit(100);只显示100行 返回一个游标记录对象MongoCursor。
Operationen am Cursorobjekt MongoCursor (MongoCursor-Klasse)
$cursor = $coll->find($query,$fields); while($cursor->hasNext()){ $r = $cursor->getNext(); var_dump($r); } //或者 $cursor = $coll->find($query,$fields); foreache($cursor as $k=>$v){ var_dump($v); } //或者 $cursor = $coll->find($query,$fields); $array= iterator_to_array($cursor);
Dieser Artikel endet hier. Weitere spannende Inhalte finden Sie in der Spalte Mongodb-Video-Tutorial auf der chinesischen PHP-Website!
Das obige ist der detaillierte Inhalt vonEinführung in die Verwendung von Mongodb und PHP (Codebeispiel). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!