在php中使用mongodb你必須使用 mongodb的php驅(qū)動。
MongoDB PHP在各平臺上的安裝及驅(qū)動包下載請查看: PHP安裝MongoDB擴展驅(qū)動
為了確保正確連接,你需要指定數(shù)據(jù)庫名,如果數(shù)據(jù)庫在mongoDB中不存在,mongoDB會自動創(chuàng)建
代碼片段如下:
<?php // 連接到mongodb $m = new MongoClient(); echo "Connection to database successfully"; // 選擇一個數(shù)據(jù)庫 $db = $m->mydb; echo "Database mydb selected"; ?>
執(zhí)行以上程序,輸出結(jié)果如下:
Connection to database successfully Database mydb selected
創(chuàng)建集合的代碼片段如下:
<?php // 連接到mongodb $m = new MongoClient(); echo "Connection to database successfully"; // 選擇一個數(shù)據(jù)庫 $db = $m->mydb; echo "Database mydb selected"; $collection = $db->createCollection("mycol"); echo "Collection created succsessfully"; ?>
執(zhí)行以上程序,輸出結(jié)果如下:
Connection to database successfully Database mydb selected Collection created succsessfully
在mongoDB中使用 insert() 方法插入文檔:
插入文檔代碼片段如下:
<?php // 連接到mongodb $m = new MongoClient(); echo "Connection to database successfully"; // 選擇一個數(shù)據(jù)庫 $db = $m->mydb; echo "Database mydb selected"; $collection = $db->mycol; echo "Collection selected succsessfully"; $document = array( "title" => "MongoDB", "description" => "database", "likes" => 100, "url" => "http://m.hgci.cn/mongodb/", "by", "w3cschool.cn" ); $collection->insert($document); echo "Document inserted successfully"; ?>
執(zhí)行以上程序,輸出結(jié)果如下:
Connection to database successfully Database mydb selected Collection selected succsessfully Document inserted successfully
使用find() 方法來讀取集合中的文檔。
讀取使用文檔的代碼片段如下:
<?php // 連接到mongodb $m = new MongoClient(); echo "Connection to database successfully"; // 選擇一個數(shù)據(jù)庫 $db = $m->mydb; echo "Database mydb selected"; $collection = $db->mycol; echo "Collection selected succsessfully"; $cursor = $collection->find(); // 迭代顯示文檔標題 foreach ($cursor as $document) { echo $document["title"] . "\n"; } ?>
執(zhí)行以上程序,輸出結(jié)果如下:
Connection to database successfully Database mydb selected Collection selected succsessfully { "title": "MongoDB" }
使用 update() 方法來更新文檔。
以下實例將更新文檔中的標題為' MongoDB Tutorial', 代碼片段如下:
<pre> <?php // 連接到mongodb $m = new MongoClient(); echo "Connection to database successfully"; // 選擇一個數(shù)據(jù)庫 $db = $m->mydb; echo "Database mydb selected"; $collection = $db->mycol; echo "Collection selected succsessfully"; // 更新文檔 $collection->update(array("title"=>"MongoDB"), array('$set'=>array("title"=>"MongoDB Tutorial"))); echo "Document updated successfully"; // 顯示更新后的文檔 $cursor = $collection->find(); // 循環(huán)顯示文檔標題 echo "Updated document"; foreach ($cursor as $document) { echo $document["title"] . "\n"; } ?>
執(zhí)行以上程序,輸出結(jié)果如下:
Connection to database successfully Database mydb selected Collection selected succsessfully Document updated successfully Updated document { "title": "MongoDB Tutorial" }
使用 remove() 方法來刪除文檔。
以下實例中我們將移除 'title' 為 'MongoDB Tutorial' 的數(shù)據(jù)記錄。, 代碼片段如下:
<?php // 連接到mongodb $m = new MongoClient(); echo "Connection to database successfully"; // 選擇一個數(shù)據(jù)庫 $db = $m->mydb; echo "Database mydb selected"; $collection = $db->mycol; echo "Collection selected succsessfully"; // 移除文檔 $collection->remove(array("title"=>"MongoDB Tutorial"),false); echo "Documents deleted successfully"; // 顯示可用文檔數(shù)據(jù) $cursor = $collection->find(); // iterate cursor to display title of documents echo "Updated document"; foreach ($cursor as $document) { echo $document["title"] . "\n"; } ?>
執(zhí)行以上程序,輸出結(jié)果如下:
Connection to database successfully Database mydb selected Collection selected succsessfully Documents deleted successfully
除了以上實例外,在php中你還可以使用findOne(), save(), limit(), skip(), sort()等方法來操作Mongodb數(shù)據(jù)庫。
更多建議: