Laravel 框架中使用 MongoDB 数据库的操作

 更新时间:2022年03月03日 16:34:59   作者:Dragon-v  
这篇文章主要介绍了Laravel 框架中使用 MongoDB 数据库的问题及操作方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

1、先确定好自己使用的哪个版本的 Laravel 框架,再决定 composer 哪一个的 MongoDB,我使用的是 Laravel 8 所以我 composer 了 3.8 的MongoDb

2、执行 composer 命令,进行下载,我是用的是第二个命令

composer require jenssegers/mongodb ^3.8 -vvv
composer require jenssegers/mongodb:3.8  --ignore-platform-reqs

3、这个时候可能会报错,所以要做以下操作

  •  php先安装mongodb扩展(连接的服务器或本地需要先安装mongodb)
  • 下载地址:https://pecl.php.net/package/mongodb
  • 在这里根据你的 PHP 版本进行选择,我的是 7.3.4 的,所以我选择 1.6.0 的

 点进去拉到最下方

4、将下载到的压缩包内的 php_mongodb.dll 文件复制到 php7.3.4 下的ext文件夹内

5、在php.ini中写入extension=mongodb 

6、cmd 执行 php -v 查看运行是否正常 

7、再次使用 composer 命令下载,如果不出意外的话,可以看到: 

8、这样就是安装成功了

9、注册服务 ,在app/config/app.php文件

Jenssegers\Mongodb\MongodbServiceProvider::class

'Mongo' => Jenssegers\Mongodb\MongodbServiceProvider::class,

10、修改数据库配置文件 config/database.php 中 

'mongodb' => [
            'driver'   => 'mongodb',
            'host'     => env('MONGODB_HOST', '127.0.0.1'),
            'port'     => env('MONGODB_POST', '27017'),
            'database' => env('MONGODB_DB', 'phone'),
            'username' => env('MONGODB_USER', ''),
            'password' => env('MONGODB_PASSWORD', ''),
        ],

 11、在 .env 文件中加入

MONGODB_HOST=127.0.0.1
MONGODB_POST=27017
MONGODB_DB=phone
DB_USERNAME=
DB_PASSWORD=

 12、接下来就可以在控制器中使用了

//添加
pubulic function index(){
    DB::connection('mongodb')       //选择使用mongodb
        ->collection('users')           //选择使用users集合
        ->insert([                          //插入数据
            'name'  =>  'tom', 
            'age'     =>   18
        ]);
}
$res = DB::connection('mongodb')->collection('phone')->get()->toArray();   //查询所有数据
dd($res);

 13、查询时也可以增加查询条件

$res = DB::connection('mongodb')->collection('phone')->where('name','tom')->first();

14、修改某个数据

DB::connection('mongodb')->collection('phone')->where('_id', '5cf71b34e14620598643d23b')->update(['name'=>'123']);

 15、删除某个数据

$res = DB::connection('mongodb')->collection('phone')->where('name','tom')->delete();

 16、我们也可以使用模型层来操作,新建一个模型层

<?php
    namespace App\Model;
    use Moloquent;
    use DB;
 
    class Users extends Model
    {    
        protected $connection = 'mongodb';  //库名    
        protected $collection = 'phone';     //文档名    
        protected $primaryKey = '_id';    //设置id    
        protected $fillable = ['id', 'name', 'phone'];  //设置字段白名单
    }

17、在控制器中这样使用:

public function index(){
    Users::create([                      //插入数据
        'id'     =>1,
        'name'   =>'tom',
        'phone'  =>110]);
    }
 
    dd(Users::all());          //查询并打印数据

18、最后,我们也可以在可视化工具中查看数据

到此这篇关于Laravel 框架中使用 MongoDB 数据库的文章就介绍到这了,更多相关Laravel使用 MongoDB 内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 阿里云服务器安装mongodb的方法

    阿里云服务器安装mongodb的方法

    这篇文章主要介绍了阿里云服务器安装mongodb的方法,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-11-11
  • 浅析MongoDB之安全认证

    浅析MongoDB之安全认证

    MongoDB是基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。默认情况下,MongoDB实例启动运行时是没有启用用户访问权限控制的,在实例本机服务器上都可以随意连接到实例进行各种操作,MongoDB不会对连接客户端进行用户验证
    2021-06-06
  • MongoDB日志文件过大的解决方法

    MongoDB日志文件过大的解决方法

    这篇文章主要介绍了MongoDB日志文件过大的解决方法,本文给出了一种不需要重启MongoDB服务的方法重新开启一个新日志文件,需要的朋友可以参考下
    2014-10-10
  • MongoDB连接数据库并创建数据等使用方法

    MongoDB连接数据库并创建数据等使用方法

    MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。接下来通过本文给大家介绍MongoDB连接数据库并创建数据等使用方法,感兴趣的朋友一起看看吧
    2021-11-11
  • Centos系统搭建MongoDB数据库

    Centos系统搭建MongoDB数据库

    这篇文章介绍了Centos系统搭建MongoDB数据库的方法,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-04-04
  • mongose 模糊检索实现方法示例详解

    mongose 模糊检索实现方法示例详解

    这篇文章主要为大家介绍了mongose 模糊检索实现方法示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-08-08
  • Mongodb批量删除gridfs文件实例

    Mongodb批量删除gridfs文件实例

    这篇文章主要介绍了Mongodb批量删除gridfs文件实例,本文根据生产环境实际需求总结而来,需要的朋友可以参考下
    2015-01-01
  • mongodb数据迁移详细步骤(亲测成功!)

    mongodb数据迁移详细步骤(亲测成功!)

    在数据驱动的时代,MongoDB作为非关系型数据库的佼佼者,以其灵活的文档模型、高可用性和可扩展性,这篇文章主要介绍了mongodb数据迁移的相关资料,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2025-01-01
  • 详解清除MongoDB所占用的多余的磁盘空间的方法

    详解清除MongoDB所占用的多余的磁盘空间的方法

    MongoDB不会自动进行垃圾文件清理,不过我们可以借助自带的repairDatabase等功能来实现,下面我们就来详解清除MongoDB所占用的多余的磁盘空间的方法,附带一个如何格式化mongo shell的输出的小技巧:
    2016-06-06
  • mongodb 3.2.5安装详细过程

    mongodb 3.2.5安装详细过程

    这篇文章主要介绍了mongodb 3.2.5安装过程详细记录,本文分步骤给大家介绍的非常详细,具有一定的参考借鉴价值,感兴趣的朋友一起看看吧
    2016-10-10

最新评论