当前位置:   article > 正文

Laravel 框架中使用 MongoDB 数据库_alternatively, you can run composer with `--ignore

alternatively, you can run composer with `--ignore-platform-req=ext-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、这个时候可能会报错,所以要做以下操作

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

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 中 

  1. 'mongodb' => [
  2. 'driver' => 'mongodb',
  3. 'host' => env('MONGODB_HOST', '127.0.0.1'),
  4. 'port' => env('MONGODB_POST', '27017'),
  5. 'database' => env('MONGODB_DB', 'phone'),
  6. 'username' => env('MONGODB_USER', ''),
  7. 'password' => env('MONGODB_PASSWORD', ''),
  8. ],

 11、在 .env 文件中加入

  1. MONGODB_HOST=127.0.0.1
  2. MONGODB_POST=27017
  3. MONGODB_DB=phone
  4. DB_USERNAME=
  5. DB_PASSWORD=

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

  1. //添加
  2. pubulic function index(){
  3. DB::connection('mongodb') //选择使用mongodb
  4. ->collection('users') //选择使用users集合
  5. ->insert([ //插入数据
  6. 'name' => 'tom',
  7. 'age' => 18
  8. ]);
  9. }
  10. $res = DB::connection('mongodb')->collection('phone')->get()->toArray(); //查询所有数据
  11. 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、我们也可以使用模型层来操作,新建一个模型层

  1. <?php
  2. namespace App\Model;
  3. use Moloquent;
  4. use DB;
  5. class Users extends Model
  6. {
  7. protected $connection = 'mongodb'; //库名
  8. protected $collection = 'phone'; //文档名
  9. protected $primaryKey = '_id'; //设置id
  10. protected $fillable = ['id', 'name', 'phone']; //设置字段白名单
  11. }

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

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

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

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小惠珠哦/article/detail/780944
推荐阅读
相关标签
  

闽ICP备14008679号