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)
Jun 21 PHP
解析php dirname()与__FILE__常量的应用
Jun 24 PHP
php中使用getimagesize获取图片、flash等文件的尺寸信息实例
Apr 29 PHP
微信公众号点击菜单即可打开并登录微站的实现方法
Nov 14 PHP
php上传中文文件名乱码问题处理方案
Feb 03 PHP
7个鲜为人知却非常实用的PHP函数
Jul 01 PHP
在Mac OS上自行编译安装Apache服务器和PHP解释器
Dec 24 PHP
Yii使用Captcha验证码的方法
Dec 28 PHP
PHP使用xpath解析XML的方法详解
May 20 PHP
PHP简单获取上月、本月、近15天、近30天的方法示例
Jul 03 PHP
PHP使用openssl扩展实现加解密方法示例
Feb 20 PHP
PHP基于phpqrcode类生成二维码的方法示例详解
Aug 07 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
全国FM电台频率大全 - 29 青海省
2020/03/11 无线电
据说是雅虎的一份PHP面试题附答案
2009/01/07 PHP
PHP Class&amp;Object -- 解析PHP实现二叉树
2013/06/25 PHP
PHP echo,print,printf,sprintf函数之间的区别与用法详解
2013/11/27 PHP
Thinkphp搭建包括JS多语言的多语言项目实现方法
2014/11/24 PHP
php递归删除目录与文件的方法
2015/01/30 PHP
PHP实现Redis单据锁以及防止并发重复写入
2018/04/10 PHP
修改发贴的编辑功能
2007/03/07 Javascript
jQuery中json对象的复制方式介绍(数组及对象)
2013/06/08 Javascript
JQuery 操作/获取table具体代码
2013/06/13 Javascript
js判断60秒以及倒计时示例代码
2014/01/24 Javascript
动态的绑定事件addEventListener方法的使用
2014/01/24 Javascript
jQuery自定义事件的简单实现代码
2014/01/27 Javascript
js获取checkbox复选框选中的选项实例
2014/08/24 Javascript
node.js中的console.info方法使用说明
2014/12/09 Javascript
jQuery+ajax实现文章点赞功能的方法
2015/12/31 Javascript
Node.js实用代码段之正确拼接Buffer
2016/03/17 Javascript
jquery实现全选、全不选以及单选功能
2017/03/23 jQuery
微信小程序 slider的简单实例
2017/04/19 Javascript
Webpack如何引入bootstrap的方法
2017/06/17 Javascript
原生JavaScript实现todolist功能
2018/03/02 Javascript
vue中实现拖动调整左右两侧div的宽度的示例代码
2020/07/22 Javascript
Vue将props值实时传递 并可修改的操作
2020/08/09 Javascript
JQuery绑定事件四种实现方法解析
2020/12/02 jQuery
javascript实现拼图游戏
2021/01/29 Javascript
[41:05]Serenity vs Pain 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
[37:45]完美世界DOTA2联赛PWL S3 LBZS vs Phoenix 第二场 12.09
2020/12/11 DOTA
Python、 Pycharm、Django安装详细教程(图文)
2019/04/12 Python
当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?
2014/09/09 面试题
英智兴达软件测试笔试题
2016/10/12 面试题
学生处主任岗位职责
2013/12/01 职场文书
运动会邀请函范文
2014/01/31 职场文书
欢迎词怎么写
2015/01/23 职场文书
2015年班主任德育工作总结
2015/05/21 职场文书
十大最强格斗系宝可梦,超梦X仅排第十,第二最重格斗礼仪
2022/03/18 日漫
集英社今正式宣布 成立游戏公司“集英社Games”
2022/03/31 其他游戏