Laravel框架中集成MongoDB和使用详解


Posted in PHP onOctober 17, 2019

* 推荐组件

composer require jenssegers/mongodb ^3.3 -vvv(本人的laravel版本是5.5)

修改config/app.php

* 注册服务

Jenssegers\Mongodb\MongodbServiceProvider::class,

* 添加 Facades

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

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

添加 MongoDB 的数据库的信息:

'mongodb' => [ 
  'driver' => 'mongodb', 
  'host'  => 'localhost', 
  'port'  => 27017, 
  'database' => 'mydb', 
  'username' => '', 
  'password' => '',
],

'default' => env('DB_CONNECTION', 'mysql'),

改成:

'default' => env('DB_CONNECTION', 'mongodb'),

修改配置文件.env

DB_CONNECTION=mongodb
// 建立一个 UserController.php 控制器
php artisan make:controller UserController

public function index(){
 

DB::collection('users')    //选择使用users集合
 

->insert([       //插入数据
  

'name' => 'wjb',
  

'age'  => 29
 

]);
 

$res = DB::collection('users')->get(); //查询所有数据
 

dd($res);


}

* 设置一个访问路由, 此时时已成功插入和读取mongodb的数据

Eloquent 模型

* 在 config/app.php 配置文件中配置 MongoDB 的 Eloquent 类的别名

'Moloquent' => 'Jenssegers\Mongodb\Eloquent\Model',

* 新建一个 User.php 的 Model 类

php artisan make:model User

* 修改User模型

<?php



namespace App;



use Moloquent;


use DB;



class User extends Moloquent
{


protected $connection = 'mongodb'; //库名


protected $collection = 'users';  //文档名
 

protected $primaryKey = '_id'; //设置id
 

protected $fillable = ['id', 'name', 'phone']; //设置字段白名单
}

UserController.php控制器中修改:

<?php



namespace App\Http\Controllers;



use Illuminate\Http\Request;


use Illuminate\Support\Facades\DB;


use App\User;


class UserController extends Controller
{
 

public function index(){
   

User::create([      //插入数据
    

'_id'  =>1,
    

'name' =>'boss',
    

'phone' =>1308888888
   

]);
  

dd(User::all());   //查询并打印数据
 

}


}

以上这篇Laravel框架中集成MongoDB和使用详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
PHP MSSQL 存储过程的方法
Dec 24 PHP
PHP中将ip地址转成十进制数的两种实用方法
Aug 15 PHP
PHP使用CURL_MULTI实现多线程采集的例子
Jul 29 PHP
PHP获取当前完整URL地址的函数
Dec 21 PHP
PHP中使用xmlreader读取xml数据示例
Dec 29 PHP
Nginx下配置codeigniter框架方法
Apr 07 PHP
thinkPHP商城公告功能开发问题分析
Dec 01 PHP
php实现连接access数据库并转txt写入的方法
Feb 08 PHP
php数值转换时间及时间转换数值用法示例
May 18 PHP
PHP单元测试框架PHPUnit用法详解
Jan 23 PHP
PHP切割汉字的常用方法实例总结
Apr 27 PHP
PHP copy函数使用案例代码解析
Sep 01 PHP
解决laravel中日志权限莫名变成了root的问题
Oct 17 #PHP
关于laravel 日志写入失败问题汇总
Oct 17 #PHP
自定义Laravel (monolog)日志位置,并增加请求ID的实现
Oct 17 #PHP
详解Laravel设置多态关系模型别名的方式
Oct 17 #PHP
Laravel 5.5 异常处理 &amp; 错误日志的解决
Oct 17 #PHP
PHP封装请求类实例分析【基于Yii框架】
Oct 17 #PHP
使用laravel指定日志文件记录任意日志
Oct 17 #PHP
You might like
晶体管单管来复再生式收音机
2021/03/02 无线电
php基于表单密码验证与HTTP验证用法实例
2015/01/06 PHP
php 判断字符串编码是utf-8 或gb2312实例
2016/11/01 PHP
form自动提交实例讲解
2017/07/10 PHP
laravel框架模型中非静态方法也能静态调用的原理分析
2019/11/23 PHP
jquery.validate.js插件使用经验记录
2014/07/02 Javascript
情人节单身的我是如何在敲完代码之后收到12束玫瑰的(javascript)
2015/08/21 Javascript
JS中使用FormData上传文件、图片的方法
2016/08/07 Javascript
jquery基本选择器匹配多个元素的实现方法
2016/09/05 Javascript
node 命令方式启动修改端口的方法
2018/05/12 Javascript
Vue中的v-for循环key属性注意事项小结
2018/08/12 Javascript
又拍云 Node.js 实现文件上传、删除功能
2018/10/28 Javascript
vue 使用鼠标滚动加载数据的例子
2019/10/31 Javascript
Vant Weapp组件踩坑:picker的初始赋值解决
2020/11/12 Javascript
[48:02]Ti4循环赛第三日 VG vs Liquid和NEWBEE vs DK
2014/07/12 DOTA
Python简单进程锁代码实例
2015/04/27 Python
python使用PyGame模块播放声音的方法
2015/05/20 Python
django批量导入xml数据
2016/10/16 Python
python排序函数sort()与sorted()的区别
2018/09/18 Python
Python 判断图像是否读取成功的方法
2019/01/26 Python
Django页面数据的缓存与使用的具体方法
2019/04/23 Python
Django Aggregation聚合使用方法解析
2019/08/01 Python
python+Django实现防止SQL注入的办法
2019/10/31 Python
python切片作为占位符使用实例讲解
2021/02/17 Python
NYX Professional Makeup俄罗斯官网:世界知名的化妆品品牌
2019/12/26 全球购物
高三毕业生自我鉴定
2013/12/20 职场文书
优秀党员主要事迹
2014/01/19 职场文书
自动一体化专业求职信
2014/03/15 职场文书
食品安全工作实施方案
2014/03/26 职场文书
好人好事演讲稿
2014/09/01 职场文书
工作年限证明范本
2015/06/15 职场文书
婚育证明格式
2015/06/17 职场文书
护士爱岗敬业心得体会
2016/01/25 职场文书
公文写作:新员工转正申请书范本3篇!
2019/08/07 职场文书
python如何在word中存储本地图片
2021/04/07 Python
上帝为你开了一扇窗之Tkinter常用函数详解
2021/06/02 Python