在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字段是无论如何都会显示的。

posted @ 2014-11-21 13:09  qīqíqǐqì  阅读(1240)  评论(0编辑  收藏  举报