最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

mongodb和php的用法詳解

 更新時間:2019年03月25日 08:39:51   投稿:laozhang  
在本篇文章中小編給大家分享了關于mongodb和php的用法以及相關知識點,需要的朋友們學習下。

Mognodb數(shù)據(jù)庫連接.

默認格式

$m = new Mongo();

//這里采用默認連接本機的27017端口,當然也可以連接遠程主機如 192.168.0.4:27017,如果端口是27017,端口可以省略。

標準連接

$m = new Mongo("mongodb://${username}:${password}@localhost");

實例:

$m = new Mongo("mongodb://127.0.0.1:27017/admin:admin");

數(shù)據(jù)庫的用戶名和密碼都是admin

數(shù)據(jù)庫操作

插入數(shù)據(jù)

<?php

//這里采用默認連接本機的27017端口,當然你也可以連接遠程主機如192.168.0.4:27017

//如果端口是27017,端口可以省略

$m = new Mongo("mongodb://127.0.0.1:27017/admin:admin");

//選擇comedy數(shù)據(jù)庫,如果以前沒該數(shù)據(jù)庫會自動創(chuàng)建,也可以用$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();

帶條件的查詢

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為大寫

查詢時,每個Object插入時都會自動生成一個獨特的_id,它相當于RDBMS中的主鍵,用于查詢時非常方便 (_id每一都不同,很像自動增加的id)

<?php

$param = array("name" => "joe");

$collection->insert($param);

$joe = $collection->findOne(array("_id" => $param['_id']));

print_R($joe);

$m->close();

返回結果:Array ( [_id] => MongoId Object ( [$id] => 4fd30e21870da83416000002 ) [name] => joe )

更改字段值

<?php

$sign = array("title" => 'php1');

$param = array("title" => 'php1','author'=>'test');

$joe = $collection->update($sign, $param);

刪除一個數(shù)據(jù)庫

$m -> dropDB(“comedy”);

列出所有可用數(shù)據(jù)庫

$m->listDBs();  //無返回值

創(chuàng)建一個MongoDB對象

<?php

$mo = new Mongo();

$db = new MongoDB($mo,'dbname');//通過創(chuàng)建方式獲得一個MongoDB對象

刪除當前DB

<?php

$db = $mo->dbname;

$db->drop();

獲得當前數(shù)據(jù)庫名

<?php

$db = $mo->dbname;

$db->_tostring();

選擇想要的collection:

//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對象

插入數(shù)據(jù)(MongoCollection對象

$coll = $mo->db->foo;

$a = array('a'=>'b');

$options = array('safe'=>true);

$rs =$coll->insert($a,$options);

刪除數(shù)據(jù)庫中的記錄(MongoCollection對象)

$coll = $mo->db->coll;

$c = array('a'=>1,'s'=>array('$lt'=>100));

$options = array('safe'=>true);

$rs = $coll->remove($c,$options);

更新數(shù)據(jù)庫中的記錄(MongoCollection對象)

$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);

查詢collection獲得單條記錄(MongoCollection類)

$coll = $mo->db->coll;

$query = array('s'=>array('$lt'=>100));

$fields = array('a'=>true,'b'=>true);

$rs = $coll->findOne($query,$fields);

查詢collection獲得多條記錄(MongoCollection類)

$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。

針對游標對象MongoCursor的操作(MongoCursor類)

$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);

相關文章

  • PHP memcache在微信公眾平臺的應用方法示例

    PHP memcache在微信公眾平臺的應用方法示例

    這篇文章主要介紹了PHP memcache在微信公眾平臺的應用方法,結合具體實例形式分析了php使用memcache保存用戶訪問記錄與響應用戶訪問并給出提示信息的交互模式實現(xiàn)技巧,需要的朋友可以參考下
    2017-09-09
  • 如何使用Zephir輕松構建PHP擴展

    如何使用Zephir輕松構建PHP擴展

    通過PHP擴展,我們可以在php代碼中使用一些特定的方法(大部分的 php擴展都是用C寫的)。本文將介紹如何使用Zephir輕松構建PHP擴展。
    2021-05-05
  • redis查看連接數(shù)及php模擬并發(fā)創(chuàng)建redis連接的方法

    redis查看連接數(shù)及php模擬并發(fā)創(chuàng)建redis連接的方法

    下面小編就為大家?guī)硪黄猺edis查看連接數(shù)及php模擬并發(fā)創(chuàng)建redis連接的方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-12-12
  • PHP檢測用戶是否關閉瀏覽器的方法

    PHP檢測用戶是否關閉瀏覽器的方法

    這篇文章主要介紹了PHP檢測用戶是否關閉瀏覽器的方法,通過connection_status獲取連接狀態(tài)實現(xiàn)針對瀏覽器關閉的判定功能,需要的朋友可以參考下
    2016-02-02
  • 使用PHP和RabbitMQ實現(xiàn)消息隊列的延遲功能

    使用PHP和RabbitMQ實現(xiàn)消息隊列的延遲功能

    這篇文章主要介紹了如何使用PHP和RabbitMQ實現(xiàn)消息隊列的延遲功能,文中通過示例代碼介紹的非常詳細,對大家學習或者使用PHP具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2024-03-03
  • PHP 遍歷文件實現(xiàn)代碼

    PHP 遍歷文件實現(xiàn)代碼

    小筆記, PHP 遍歷所有文件, 包括子目錄中的文件. 和壓縮文件的類結合起來的話, 就可以打包整個目錄了.
    2011-05-05
  • php簡單獲取復選框值的方法

    php簡單獲取復選框值的方法

    這篇文章主要介紹了php簡單獲取復選框值的方法,簡單分析了php以數(shù)組形式傳遞復選框checkbox值的實現(xiàn)方法,需要的朋友可以參考下
    2016-05-05
  • 詳談PHP程序Laravel 5框架的優(yōu)化技巧

    詳談PHP程序Laravel 5框架的優(yōu)化技巧

    性能一直是 Laravel 框架為人詬病的一個點,所以調優(yōu) Laravel 程序算是一個必學的技能。以下的十個技巧可以幫助你優(yōu)化PHP程序Laravel 5框架。
    2016-07-07
  • PHP數(shù)組函數(shù)知識匯總

    PHP數(shù)組函數(shù)知識匯總

    什么是數(shù)組?數(shù)組就是被命名的用來存儲一系列數(shù)值的地方。這篇文章主要匯總了PHP數(shù)組函數(shù)最基礎的知識點,感興趣的小伙伴們可以參考一下
    2016-05-05
  • php析構函數(shù)的簡單使用說明

    php析構函數(shù)的簡單使用說明

    與構造函數(shù)相反,在PHP5中,可以定義一個名為__destruct()的函數(shù),稱之為PHP5析構函數(shù),PHP將在對象在內存中被銷毀前調用析構函數(shù),使對象在徹底消失之前完成一些工作。對象在銷毀一般可以通過賦值為null實現(xiàn)。
    2015-08-08

最新評論

阿鲁科尔沁旗| 正定县| 东宁县| 尤溪县| 无锡市| 阿荣旗| 神木县| 晋宁县| 锡林浩特市| 枣强县| 阿拉善盟| 贡山| 上栗县| 尖扎县| 肇庆市| 马关县| 中宁县| 正定县| 和林格尔县| 灵武市| 鱼台县| 秭归县| 游戏| 堆龙德庆县| 万山特区| 浑源县| 临猗县| 满洲里市| 湛江市| 韩城市| 浮梁县| 南华县| 措勤县| 龙山县| 额敏县| 武功县| 上饶县| 桐城市| 娱乐| 广平县| 鹤岗市|