pcel安裝的mongodb的兩個問題的解決方案

來源:互聯網
上載者:User

標籤:object   比較   參考   target   manager   option   記錄   except   host   

  最近工作需要,要使用mongodb,這個是使用 pecl 安裝的,跟標準的 mongo 使用還是有區別的,這裡不講區別,只講兩個比較典型的問題該如何處理,具體的文檔大家可以直接參考 php 的官方文檔:http://php.net/manual/zh/book.mongodb.php 

問題1: mongodb如何使用 _id 查詢記錄:

這裡的id,是我們在插入一條記錄時,mongo自動產生的id。

(1)從屬記錄從擷取id

function get_oid($query_result = array()){ // 這裡的 $query_result 是查詢到的一條記錄        if(empty($query_result)){            return false;        }else{            $id_obj = $query_result[‘_id‘];            $id_array = get_object_vars($id_obj);            return $id_array[‘oid‘];        }}

(2)從 _id 查詢相關記錄

$id = new MongoDB\BSON\ObjectID($origin_id);  // $origin_id 為記錄中的id$query = array(‘_id‘ => $id); // $query為普通查詢語句查詢條件,利用該條件,就可以查詢出 _id 為指定 id 的記錄

 

問題2: 如何刪除一個 collection

function drop_collection($db,$collection){        $manager = new MongoDB\Driver\Manager(‘mongodb://‘.$your_hosts.‘/‘, $your_options); // 這裡需要換為你的host option        try{            $server  = $manager->selectServer( new MongoDB\Driver\ReadPreference( MongoDB\Driver\ReadPreference::RP_PRIMARY ) );            $result  = $server->executeCommand( $db, new MongoDB\Driver\Command(["drop" => $collection])); // 這句是實現的關鍵,注意格式        }catch(Exception $E){           return $E;        }        return $result;}

 

pcel安裝的mongodb的兩個問題的解決方案

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.