foreach中使用mongo会终止循环?

我用php写了一个foreach循环,在中间连接mongo去修改一些数据,这个时候foreach只会遍历一次,而我的循环次数应该是200才对;
程序执行是成功的,没有报错,但是只遍历了一次
伪代码:

foreach($arr as $k => $v){
    $save = [字段=>值];
    $where = [字段=>值];
    $this->mongo->update(表名,$save,$where);//

}
阅读 2.7k
3 个回答

这个肯定不是foreach的问题,
你的$arr数组有几个元素,它就会循环几次,除非你用了break,continue,return。

你可以在循环体内echo $k,看一次是否只循环了一次。

可能是你的数据只修改了一条,那是你更新数据那部分的代码有问题。

谢谢各位的回答,我已经找到问题,是由于mongo在做数据操作的时候需要实例化一个bluk对象,这个对象我只实例化了一次,改为每次循环都实例化就好使了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题