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

前端之家收集整理的这篇文章主要介绍了[PHP]新版的mongodb扩展安装和使用前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

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

ubuntu下

apt-get install PHP-mongodb

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

<?PHP
class DocModel{
    public $mongoManger=null;
    $dbName='coms'public function __construct(){
        // 连接到mongodb
        $this->mongoManger = new MongoDB\Driver\Manager("mongodb://127.0.0.1:27017");
    }
    添加文档模型
    function addModel($isDraft=false){
        $params=[];
        $params['modelID']='basic_news';
        $params['name']='基础新闻'$params['parentID']='root'$params['modelXML']="<?xml version=\"1.0\" encoding=\"utf-8\"?>\r\n<model>\r\n\t  <fields>\r\n\t  <field label=\"标题\" name=\"title\" type=\"string\" widget=\"title\" required=\"1\" maxLength=\"60\" minLength=\"1\"   esAnalyzed=\"analyzed\" esAddNoAnalyzed=\"yes\" >\r\n\t\t<widgetParams>\r\n\t\t\t<param name=\"marks\" value=\"5,13.5,40\"\/>\r\n\t\t<\/widgetParams>\r\n\t\t<validation>\r\n\t\t\t<rule type=\"maxZhLength\" value=\"40\" msgZh=\"标题长度不能超过40个汉字长度\" \/>\r\n\t\t<\/validation>\r\n\t<\/field>\r\n\t\t  <\/fields>\r\n  <layout>\r\n\t<fieldset name=\"basic\" legend=\"基本信息\">\r\n\t\t<field name=\"title\" width=\"12\"\/>\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,1)">$bulk文档模型列表
    function listModel($filter = [];
        $options =$query = new MongoDB\Driver\Query($filter,1)">$options);
        $cursor = $this->mongoManger->executeQuery($query);
        foreach ($cursor as $document) {
            var_dump();
        }
    }
    获取文档模型详情
    function getModel($filter = ['modelID'=>$params['modelID']];
        );
        }
    }
}
$docModel= DocModel();
$docModel->getModel(true);

 

猜你在找的PHP相关文章