溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

使用PHP怎么對MongoDB[NoSQL]數(shù)據(jù)庫進(jìn)行操作

發(fā)布時間:2021-02-04 16:58:59 來源:億速云 閱讀:164 作者:Leah 欄目:開發(fā)技術(shù)

使用PHP怎么對MongoDB[NoSQL]數(shù)據(jù)庫進(jìn)行操作?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。

一、MongoDB簡介

MongoDB (名稱來自"humongous") 是一個可擴(kuò)展的、高性能、開源、模式自由、面向文檔的數(shù)據(jù)庫,集文檔數(shù)據(jù)庫、鍵值對存儲和關(guān)系型數(shù)據(jù)庫的優(yōu)點于一身。官方站點:http://www.mongodb.org/,MongoDB特點:

?面向文檔存儲(類JSON數(shù)據(jù)模式簡單而強(qiáng)大)
?動態(tài)查詢
?全索引支持,擴(kuò)展到內(nèi)部對象和內(nèi)嵌數(shù)組
?查詢記錄分析
?快速,就地更新
?高效存儲二進(jìn)制大對象 (比如照片和視頻)
?復(fù)制和故障切換支持
?Auto-Sharding自動分片支持云級擴(kuò)展性
?MapReduce 支持復(fù)雜聚合
?商業(yè)支持,培訓(xùn)和咨詢
二、安裝MongoDB

安裝MongoDB非常的簡單,僅需下載壓縮包解壓運行命令即可,下載地址:http://www.mongodb.org/downloads,本文為windows平臺,MongoDB運行命令:>bin/mongod。提示:首先要創(chuàng)建存儲數(shù)據(jù)的文件夾,MongoDB 默認(rèn)存儲數(shù)據(jù)目錄為 /data/db/ (或者 c:\data\db),當(dāng)然你也可以修改成不同目錄,只需要指定 --dbpath 參數(shù),eg:
>bin/mongod --dbpath=d:\mgdata\db
三、安裝MongoDB PHP擴(kuò)展
根據(jù)自己的PHP版本下載PHP擴(kuò)展:http://www.php.net/manual/en/mongo.installation.php#mongo.installation.windows,提示:
1、VC6適合Apache、VC9適合IIS;
2、Thread safe適合PHP以模塊運行方式、Non-thread safe適合CGI運行方式。
修改php.ini,加入:extension=php_mongo.dll,重啟Web服務(wù)器。
四、PHP示例
1、連接Mongo服務(wù)器

復(fù)制代碼 代碼如下:


<?php 
//連接localhost:27017 
$conn = new Mongo(); 
//連接遠(yuǎn)程主機(jī)默認(rèn)端口 
$conn = new Mongo('test.com'); 
//連接遠(yuǎn)程主機(jī)22011端口 
$conn = new Mongo('test.com:22011'); 
//MongoDB有用戶名密碼 
$conn = new Mongo("mongodb://${username}:${password}@localhost");

//MongoDB有用戶名密碼并指定數(shù)據(jù)庫blog 
$conn = new Mongo("mongodb://${username}:${password}@localhost/blog"); 
//多個服務(wù)器 
$conn = new Mongo("mongodb://localhost:27017,localhost:27018"); 
?>

2、指定數(shù)據(jù)庫和數(shù)據(jù)集名(表名)

復(fù)制代碼 代碼如下:


<?php 
//選擇數(shù)據(jù)庫blog 
$db = $conn->blog; 
//制定結(jié)果集(表名:users)

$collection = $db->users; 
?>
3、CRUD
<?php 
//新增 
$user = array('name' => 'caleng', 'email' => 'admin@admin.com'); 
$collection->insert($user); 
//修改 
$newdata = array('$set' => array("email" => "test@test.com")); 
$collection->update(array("name" => "caleng"), $newdata); 
//刪除 
$collection->remove(array('name'=>'caleng'), array("justOne" => true)); 
//查找 
$cursor = $collection->find(); 
var_dump($cursor); 
//查找一條 
$user = $collection->findOne(array('name' => 'caleng'), array('email')); 
var_dump($user); 
?>
4、關(guān)閉連接
<?php 
$conn->close(); 
?>

看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識有進(jìn)一步的了解或閱讀更多相關(guān)文章,請關(guān)注億速云行業(yè)資訊頻道,感謝您對億速云的支持。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI