Mongo操作教程之PHP擴充套件

2021-07-27 06:32:44 字數 3501 閱讀 7876

接下來我們從命令列和php程式兩個方面進行對php程式對mongodb的連線、增刪改查進行詳細的講解與**例項。 

1、首先進行資料庫的連線與建立,比如我們預設連線主機和埠為:mongodb://localhost:27017的mongodb,然後建立資料庫rision。

<?php 

$m = new mongoclient(); // 連線預設主機和埠為:mongodb://localhost:27017

$db = $m->rision; // 獲取名稱為 "rision" 的資料庫

if($db)

?>

注意:此時在命令列輸入:show dbs 或許並沒有發現我們建立的rision資料庫,別急,這是因為資料庫中為空是不顯示的。

2、接下來建立集合(資料表)liuxiao

<?php 

$m = new mongoclient(); // 連線

$db = $m->rision; // 獲取名稱為 "rision" 的資料庫

$collection = $db->createcollection("liuxiao");

echo "集合建立成功";

?>

此時在命令列輸入show dbs,顯示結果如下: 

3、接下來給集合中插入文件(資料記錄行)

<?php 

$m = new mongoclient(); // 連線到mongodb

$db = $m->rision; // 選擇乙個資料庫

$collection = $db->liuxiao; // 選擇集合

$document = array(

"title" => "mongodb",

"description" => "database",

"likes" => 100,

"url" => "",

"by"=> "shenggeweida"

);$collection->insert($document);

echo "資料插入成功";

?>

我們在命令列可以檢視我們成功插入的資料,在命令列輸入命令: db.liuxiao.find().pretty(),執行如下: 

4、然後我們進行簡單的查詢文件(資料記錄行)功能

<?php 

$m = new mongoclient(); // 連線到mongodb

$db = $m->rision; // 選擇乙個資料庫

$collection = $db->liuxiao; // 選擇集合

$cursor = $collection->find();

// 迭代顯示文件標題

foreach ($cursor as $document)

?>

我們還可以進行複雜一點的操作,這裡我們舉個例子,關於更加複雜的操作我們這裡不做講解。假如我們有個資料庫school,然後裡面有乙個集合student,裡面有stu_id、stu_name、age、class_id共5個字段,我們在命令列輸入以下命令插入幾組資料

db.student.insert();
插入幾組資料後可以通過db.student.find()檢視資料 

然後我們現在需要查詢0<=stu_id<=20的資料

<?php 

// 鏈結伺服器

$m = new mongoclient();

// 選擇乙個資料庫

$db = $m->school;

// 選擇乙個集合( mongo 的「集合」相當於關係型資料庫的「表」)

$collection = $db->student;

$fruitquery = array('stu_id' => array('$gte'=>0,'$lte'=>22)); //設定查詢條件

$field=array('_id'=>0);//設定顯示字段

$res=$collection->find($fruitquery,$field);

foreach ($res as $stu)

執行結果如下: 

5、接下類我們介紹更新文件(資料記錄行)操作,直接上**

<?php 

$m = new mongoclient(); // 連線到mongodb

$db = $m->rision; // 選擇乙個資料庫

$collection = $db->liuxiao; // 選擇集合

// 更新文件

$collection->update(array("title"=>"mongodb"), array('$set'=>array("title"=>"mongodb 教程")));

// 顯示更新後的文件

$cursor = $collection->find();

// 迴圈顯示文件標題

foreach ($cursor as $document)

?>

而後在命令列執行db.liuxiao.find().pretty(),檢視以上**執行後的結果,執行結果如下: 

6、刪除文件(資料記錄行)操作

<?php 

$m = new mongoclient(); // 連線到mongodb

$db = $m->rision; // 選擇乙個資料庫

$collection = $db->liuxiao; // 選擇集合

// 移除文件

$collection->remove(array("title"=>"mongodb 教程"), array("justone" => true));

// 顯示可用文件資料

$cursor = $collection->find();

foreach ($cursor as $document)

?>

以上只是入門級別的一些簡單操作,所有複雜的東西都是建立在一點一滴的基礎之上的,相信掌握了這些你再操作mongodb已不是問題了!

php安裝mongo擴充套件(linux)

2.解壓安裝包 tar zxf mongodb 1.2.8.tgz 3.進入解壓目錄,執行phpize進行安裝準備 phpize作用 cd mongodb 1.2.8 usr local php bin phpize 4.安裝編譯 上述命令執行完後,在目錄下就生成了configure檔案 使用.co...

php對mongo操作問題

最近由於業務需求,需要使用php對mongo做一些操作,關於mongodb,選擇的版本是 mongodb shell version 2.0.6 mongodb是一種文件導向資料庫管理系統,由c 撰寫而成,以此來解決應用程式開發社群中的大量現實問題。2007年10月,mongodb由10gen團隊所...

PHP操作mongo資料庫

conn new mongoclient mongodb localhost 27017 mongodb username password host port db conn chili 選擇資料庫 col db test 選擇集合 dbs conn listdbs 檢視所有的表 collecti...