成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

【mongoDB基礎(chǔ)篇②】PHP-mongo擴(kuò)展的編譯以及使用

Barry_Ng / 3421人閱讀

摘要:安裝擴(kuò)展安裝擴(kuò)展和安裝其他擴(kuò)展的步驟一樣首先上上面搜索得到下載地址解壓進(jìn)入后進(jìn)行編譯有可能要寫全的地址編譯成功后出現(xiàn)得其地址寫入有可能要寫全的路徑也就是上面的提示安裝完以后看中有沒有這個(gè)擴(kuò)展有就表示安裝成功以上基

安裝PHP-mongo擴(kuò)展

安裝php-mongo擴(kuò)展和安裝其他php擴(kuò)展的步驟一樣:

#1.首先上http://pecl.php.net上面搜索mongo,得到下載地址
wget http://pecl.php.net/get/mongo-1.6.11.tgz
tar zxvf ./mongo-1.6.11.tgz

#2.解壓進(jìn)入,phpize后進(jìn)行編譯
cd ./mongo-1.6.11
phpize #有可能要寫全phpize的地址
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install

#3.編譯成功后出現(xiàn):
Installing shared extensions:     /usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/

#4.得其地址寫入php.ini
extension = mongo.so #有可能要寫全mongo.so的路徑,也就是上面的提示

#5.安裝完以后,看phpinfo()中有沒有這個(gè)擴(kuò)展,有就表示安裝成功;

以上基本上也是其他PHP擴(kuò)展安裝的常規(guī)方法

官方的PHP-mongo類使用

一般都是進(jìn)行二次封裝后再使用,便于后續(xù)的擴(kuò)展;在此之前,我們先熟悉官方的的使用方法,php官方類使用起來跟其他擴(kuò)展的類方法相比略為特殊

 shop; //獲取名稱為shop的數(shù)據(jù)庫對(duì)象,或者使用$db = $m->selectDB("example"),這個(gè)時(shí)候$db是由class mongoDB來實(shí)例的,更多可以參考http://php.net/manual/zh/class.mongodb.php  

$goods = $db -> goods; //得到goods集合對(duì)象,這個(gè)時(shí)候的$goods對(duì)象是由class MongoCollection類來實(shí)例的;

//db.goods.find({},{"_id":0,"goods_id":1,"goods_name":1})
$cursor = $goods -> $goods -> find(array(),array("_id" => 0,"goods_id" => 1,"goods_name" => 1));  //得到cursor對(duì)象,這個(gè)時(shí)候的cursor對(duì)象是由class MongoCursor來實(shí)例的

#接下來才是正式操作mongoDB的數(shù)據(jù),把json轉(zhuǎn)換為數(shù)組既可;
$data = array();
foreach ($cursor as $v) {
  $data[] = $v;
}

#或者
$data = iterator_to_array($cursor); # 內(nèi)置函數(shù): 將迭代器中的元素拷貝到數(shù)組

/**********部分操作示例**********/

$users = $db -> users;

# 返回值
$insert = $users -> insert(array("user_id" => 1,"user_name" => "zxg","sex" => "boy"));
/*
  Array
  (
      [ok] => 1 //除非 last_error 本身出現(xiàn)錯(cuò)誤,否則都是1,代表成功;
      [n] => 0 //受影響的數(shù)量,在insert的時(shí)候這個(gè)值始終是0;
      [err] => null
      [errmsg] => null
  )
 */
 
# 執(zhí)行js,注意這是class mongoDB類的方法
$response = $db->execute("function(greeting, name) { return greeting+", "+name+"!"; }", array("Good bye", "Joe"));
echo $response["retval"]; // Good bye, Joe!
?>
參考

PHP: MongoClient - Manual: http://php.net/manual/zh/class.mongoclient.php

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/18810.html

相關(guān)文章

  • mac 編譯安裝php-mongo 擴(kuò)展時(shí)報(bào)evp.h文件找不到解決方案

    摘要:編譯安裝擴(kuò)展時(shí)報(bào)文件找不到的解決方案我在編譯擴(kuò)展的時(shí)候遇到了這個(gè)問題問題分析就是這個(gè)文件找不到解決思路找一個(gè)文件放過去在本地找一下看有沒有這個(gè)文件得到下面的結(jié)果于是拷貝一個(gè)過去再執(zhí)行顯示問題解決。 mac 編譯安裝php-mongo 擴(kuò)展時(shí)報(bào)evp.h文件找不到的解決方案 我在編譯mongo擴(kuò)展的時(shí)候 遇到了這個(gè)問題: In file included from /usr/local/...

    twohappy 評(píng)論0 收藏0
  • mac 編譯安裝php-mongo 擴(kuò)展時(shí)報(bào)evp.h文件找不到解決方案

    摘要:編譯安裝擴(kuò)展時(shí)報(bào)文件找不到的解決方案我在編譯擴(kuò)展的時(shí)候遇到了這個(gè)問題問題分析就是這個(gè)文件找不到解決思路找一個(gè)文件放過去在本地找一下看有沒有這個(gè)文件得到下面的結(jié)果于是拷貝一個(gè)過去再執(zhí)行顯示問題解決。 mac 編譯安裝php-mongo 擴(kuò)展時(shí)報(bào)evp.h文件找不到的解決方案 我在編譯mongo擴(kuò)展的時(shí)候 遇到了這個(gè)問題: In file included from /usr/local/...

    jhhfft 評(píng)論0 收藏0
  • PHP7 mongoDB擴(kuò)展使用

    摘要:最近在做的項(xiàng)目需要將升級(jí)到,使用過擴(kuò)展的同學(xué)應(yīng)該知道,的擴(kuò)展是完全不兼容的擴(kuò)展的,改如何使用呢。 最近在做的項(xiàng)目需要將PHP5.6升級(jí)到PHP7.0,使用過PHP-mongo擴(kuò)展的同學(xué)應(yīng)該知道,PHP7.0的mongodb擴(kuò)展是完全不兼容PHP5.6的mongo擴(kuò)展的,php-mongodb改如何使用呢。 下面直接說明各種方法的使用: 1.mongodb連接: private func...

    objc94 評(píng)論0 收藏0
  • PHP7 mongoDB擴(kuò)展使用

    摘要:最近在做的項(xiàng)目需要將升級(jí)到,使用過擴(kuò)展的同學(xué)應(yīng)該知道,的擴(kuò)展是完全不兼容的擴(kuò)展的,改如何使用呢。 最近在做的項(xiàng)目需要將PHP5.6升級(jí)到PHP7.0,使用過PHP-mongo擴(kuò)展的同學(xué)應(yīng)該知道,PHP7.0的mongodb擴(kuò)展是完全不兼容PHP5.6的mongo擴(kuò)展的,php-mongodb改如何使用呢。 下面直接說明各種方法的使用: 1.mongodb連接: private func...

    Paul_King 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<