[PHP]新版的mongodb扩展安装和使用

旧版的mongo扩展已经不推荐使用了,在php7以上一般是安装和使用新版的mongodb扩展

ubuntu下

apt-get install php-mongodb

例如下面的代码进行了查询和插入集合操作

php
class DocModel{
    public $mongoManger=null;
    public $dbName='coms';
    public function __construct(){
        // 连接到mongodb
        $this->mongoManger = new MongoDB\Driver\Manager("mongodb://127.0.0.1:27017");
    }
    //添加文档模型
    public function addModel($isDraft=false){
        $params=[];
        $params['modelID']='basic_news';
        $params['name']='基础新闻';
        $params['parentID']='root';
        $params['modelXML']="\r\n\r\n\t  \r\n\t  \r\n\t\t\r\n\t\t\t\r\n\t\t<\/widgetParams>\r\n\t\t\r\n\t\t\t\r\n\t\t<\/validation>\r\n\t<\/field>\r\n\t\t  <\/fields>\r\n  \r\n\t
\r\n\t\t\r\n\t<\/fieldset>\t\r\n <\/layout>\r\n<\/model>"; $params['isTest']='0'; $params['desc']='shihan添加'; $params['auditFeedback']=''; $params['status']='1'; $params['audited']='1'; $collect=$isDraft ? '.modelDraft':'model'; $bulk = new MongoDB\Driver\BulkWrite(); $sets= ['$set' => $params]; $bulk->update(['modelID' => $params['modelID']],$sets, ['multi' => false, 'upsert' => true]); $this->mongoManger->executeBulkWrite($this->dbName.$collect, $bulk); } //文档模型列表 public function listModel($isDraft=false){ $filter = []; $options = []; $collect=$isDraft ? '.modelDraft':'model'; $query = new MongoDB\Driver\Query($filter, $options); $cursor = $this->mongoManger->executeQuery($this->dbName.$collect, $query); foreach ($cursor as $document) { var_dump($document); } } //获取文档模型详情 public function getModel($isDraft=false){ $params['modelID']='basic_news'; $filter = ['modelID'=>$params['modelID']]; $options = []; $collect=$isDraft ? '.modelDraft':'model'; $query = new MongoDB\Driver\Query($filter, $options); $cursor = $this->mongoManger->executeQuery($this->dbName.$collect, $query); foreach ($cursor as $document) { var_dump($document); } } } $docModel=new DocModel(); $docModel->getModel(true);

 

你可能感兴趣的:([PHP]新版的mongodb扩展安装和使用)