zoukankan      html  css  js  c++  java
  • 在Thinkphp3.1中使用Mongo的具体操作

    最近研究Mongo项目都是用TP开发的,先介绍下Mongo在TP3.1中的用法

    首先要确保你的PHP环境中已经安装好Mongo扩展,在实际项目中大多数都是Mysql数据库为主的,那么如何添加一个Mongo的连接呢,这里我们需要新建一个TP的模型

    就叫做baseMongoModel代码如下,让他继承TP的MongoModel我们,这就是我们项目中的Mongo基类了,其中配置文件中的数据库名称和表前缀都需要重新申明,不知是TP的原因还是我的问题,反正这里重新顶一下即可。

    弄好后,实例化baseMongo后我们的查询就可以和TP中Mysql的连贯操作一样的使用了,个人感觉还是蛮方便了,无需对mongo扩展的语句做过多的了解。

    class baseMongoModel extends MongoModel {
        
        protected $connection  = array(
                //数据库配置
                'DB_TYPE' => 'mongo', // 数据库类型
                'DB_HOST' => '192.168.1.1', // 服务器地址
                'DB_NAME' => 'mytest', // 数据库名
                'DB_USER' => 'root', // 用户名
                'DB_PWD' => '123456', // 密码
                'DB_PORT' => '27017', // 端口
            );
        protected $dbName = 'mytest';//这里需要重新定义
        protected $tablePrefix = 'qi_';  
        //protected $tableName = 'c2';
        protected $pk = 'id';//主键名称
        //protected $_idType = 2;//整形自动增长
        //protected $_autoInc =  true;
        
        
        
    
    }

    $modelObj->field("name,email,age")->where(array('name'=>'xxx'))->select();

    通过field方式选定字段查询时,mongo默认的_id字段是无论如何都会显示的。

  • 相关阅读:
    linux:centos7开启指定端口,开放外网访问
    zookeeper 集群搭建
    单机安装zookeeper的3.4.7版本
    CentOS7下安装jdk1.8并配置环境变量,防火墙设置开关
    Redis分布式锁的正确实现方式
    MySQl5.7 忘记密码怎么办?
    Flink 之Window(窗口)
    Flink之Sink(文件、Kafka、Redis、Es、Mysql)
    Canal同步Mysql数据至Hbase
    Flink 之分流Select与Split
  • 原文地址:https://www.cnblogs.com/zhucheer/p/4112672.html
Copyright © 2011-2022 走看看