十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
php7中MongoDB的使用方法?这个问题可能是我们日常学习或工作经常见到的。希望通过这个问题能让你收获颇深。下面是小编给大家带来的参考内容,让我们一起来看看吧!
金水网站制作公司哪家好,找创新互联建站!从网页设计、网站建设、微信开发、APP开发、响应式网站等网站项目制作,到程序开发,运营维护。创新互联建站从2013年成立到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联建站。
提示:PHP的mongodb扩展,从5.6开始已经废弃了原来的mongo扩展,PHP7的pecl下载地址:https://pecl.php.net/package/mongodb,或者选择mongodb官方开发:https://github.com/mongodb/mongo-php-library,git上的这个支持以前mongo写法,pecl上的mongodb不支持以前的写法。
下面用PHP7新的API总结一下:
一:CURD
1:链接
root 用户;123:密码;如果没有密码则不写
2:查询
['$gt'=>0]]; //查询条件 user_id大于0 $options = [ 'projection' => ['_id' => 0], //不输出_id字段 'sort' => ['user_id'=>-1] //根据user_id字段排序 1是升序,-1是降序 ]; $query = new MongoDB\Driver\Query($filter, $options); //查询请求 $list = $manager->executeQuery('location.box',$query); // 执行查询 location数据库下的box集合 foreach ($list as $document) { print_r($document); }查询更多条件使用方法,参考第二节mongodb基本命令,查询
3:添加
flase]);//如果要改成无序操作则加flase,并行执行 $bulk->insert(['user_id' => 2, 'real_name'=>'中国',]); $bulk->insert(['user_id' => 3, 'real_name'=>'中国人',]); $manager->executeBulkWrite('location.box', $bulk); //执行写入 location数据库下的box集合4:修改
flase]);//如果要改成无序操作则加flase,并行执行 $bulk->update( ['user_id' => 2], ['$set'=>['real_name'=>'中国国'] ]); //$set相当于MySQL的 set,这里和mysql有两个不同的地方, //1:字段不存在会添加一个字段; //2:mongodb默认如果条件不成立,新增加数据,相当于insert //如果条件不存在不新增加,可以通过设置upsert //db.collectionName.update(query, obj, upsert, multi); $bulk->update( ['user_id' => 5], [ '$set'=>['fff'=>'中国国'] ], ['multi' => true, 'upsert' => false] //multi为true,则满足条件的全部修改,默认为true,如果改为false,则只修改满足条件的第一条 //upsert为 treu:表示不存在就新增 ); $manager->executeBulkWrite('location.box', $bulk); //执行写入 location数据库下的box集合ordered 设置
1:默认是ture,按照顺序执行插入更新数据,如果出错,停止执行后面的,mongo官方叫串行。
2:如果是false,mongo并发的方式插入更新数据,中间出现错误,不影响后续操作无影响,mongo官方叫并行5:删除
flase]);//如果要改成无序操作则加flase,并行执行 $bulk->delete(['user_id'=>5]);//删除user_id为5的字段 $manager->executeBulkWrite('location.box', $bulk); //执行写入 location数据库下的box集合delete还可以通过limit设置不同删除方式
$bulk->delete(['user_id' => 1], ['limit' => 1]); // limit 为 1 时,删除第一条匹配数据 $bulk->delete(['user_id' => 2], ['limit' => 0]); // limit 为 0 时,删除所有匹配数据,默认删除所有6:捕获异常
MongoDB\Driver\Exception\AuthenticationException MongoDB\Driver\Exception\BulkWriteException MongoDB\Driver\Exception\ConnectionException MongoDB\Driver\Exception\ConnectionTimeoutException MongoDB\Driver\Exception\Exception //所有驱动程序异常的公共接口 MongoDB\Driver\Exception\ExecutionTimeoutException MongoDB\Driver\Exception\InvalidArgumentException MongoDB\Driver\Exception\LogicException MongoDB\Driver\Exception\RuntimeException MongoDB\Driver\Exception\SSLConnectionException MongoDB\Driver\Exception\UnexpectedValueException MongoDB\Driver\Exception\WriteException说明:http://php.net/manual/zh/class.mongodb-driver-exception-authenticationexception.php
感谢各位的阅读!看完上述内容,你们对php7中mongodb的使用方法大概了解了吗?希望文章内容对大家有所帮助。如果想了解更多相关文章内容,欢迎关注创新互联行业资讯频道。
本文标题:php7中mongodb的使用方法
网页地址:http://shouzuofang.com/article/jjgjis.html