thinkphp下mongo的操作示例
发表于:2025-02-07 作者:千家信息网编辑
千家信息网最后更新 2025年02月07日,这篇文章主要介绍 thinkphp下mongo的操作示例,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!thinkphp 下的mongo的操作1.多个条件语句,网上很多只是一个大
千家信息网最后更新 2025年02月07日thinkphp下mongo的操作示例
这篇文章主要介绍 thinkphp下mongo的操作示例,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
1.多个条件语句,网上很多只是一个大于或者一个小于,没有2个合并的,如大于2并且小于4的
$where['_string'] = 'this.b > 2 & this.b<4';
2.group
mysql:$res = $model->where(['sTaskId'=>['$in'=>$task_array]])->group('a')->field('a,sum(a)')->select();mongodb:$key = ['a'=>1]; //groupby的字段$init = ['num'=>0];//统计的初始值$option = array('table' => 'course', // 表名'condition'=>['sTaskId'=>['$in'=>$task_array]], //group中过滤条件);//必须要带option$reduce = "function(obj, prev){prev.num = prev.num+obj.a}";$model = new TestModel();$res = $model->group($key, $init, $reduce, $option);这里讲一下tp的mongo扩展是有问题的,在group里调用where会无效,具体解决方案是要在mongo.class.php文件a.把$query改为如下:$query = $this->parseWhere(isset($options['condition'])?$options['condition']:array());当然$this->queryStr 也要改的b.把$group改为:$group = $this->_collection->group($keys,$initial,$reduce,$query);
3.如果你要用model模型去查询,并且你的主配置是mysql,那就需要先在配置文件配置
'mongo' => [DB_TYPE => mongo DB_HOST => localhost DB_NAME => testDB_PORT => 40000DB_PREFIX =>'' DB_USER => ''DB_PWD => ''],
然后在model文件里配置,
a.protected $trueTableName = '表名';
b.protected $connection = '驱动名,这里是mongo';
c.该model继承MongoModel
4.批量更新
mysql里只要$res = $model->save(['a'=>1']);mongo的话需要写成$res = $model->where([])->save(['a'=>1]);
5.mongo注意点:
mongo对于数据类型的控制比较严格,如果你存个int的1,用'1'去查是查不到的!
以上是" thinkphp下mongo的操作示例"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!
配置
文件
示例
内容
条件
篇文章
价值
兴趣
只是
多个
字段
小伙
小伙伴
数据
方案
更多
模型
知识
类型
行业
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
添加数据库表里的一条数据
通信设备软件开发面试
ps高对比照片调试数据库
湖南迅卓科技互联网有限公司
杨浦区通信网络技术铸造辉煌
云网络安全股票
天津网络安全宣传人才引进
车联网应用了哪些网络技术
数据库itemval
引擎软件开发 上市公司
河北同方服务器
网络技术发展ppt
服务器 存储实施方案
服务器通讯密钥
edis 服务器管理
内核里面的数据库
大学学生会网络技术部面试
维护网络安全诗句
地瓜网络技术是收费的吗
废土求生多人服务器
软件开发室部门介绍
excel排除数据库
浙江省公安厅网络技术处
路由器服务器未连接
网络安全为主题的小报
天津数据软件开发服务价格优惠
讯聘网络技术有限公司
软件开发vm做服务器测试
学it网络的软件开发
网络安全常封闭端口