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&amp;mysql(三)
Oct 09 PHP
随时给自己贴的图片加文字的php水印
Mar 16 PHP
请php正则走开
Mar 15 PHP
PHP 中文处理技巧
Apr 25 PHP
如何用phpmyadmin设置mysql数据库用户的权限
Jan 09 PHP
深入理解PHP之数组(遍历顺序)  Laruence原创
Jun 13 PHP
PHP中UNIX时间戳和日期间的转换与计算实例
Nov 19 PHP
给WordPress中的留言加上楼层号的PHP代码实例
Dec 14 PHP
PHP实现的XML操作类【XML Library】
Dec 29 PHP
PHP获取真实客户端的真实IP
Mar 07 PHP
详解使用php调用微信接口上传永久素材
Apr 11 PHP
PHP与JavaScript针对Cookie的读写、交互操作方法详解
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
dede3.1分页文字采集过滤规则详说(图文教程)
2007/04/03 PHP
PHP合并静态文件详解
2014/11/14 PHP
php对关联数组循环遍历的实现方法
2015/03/13 PHP
基于JavaScript实现继承机制之原型链(prototype chaining)的详解
2013/05/07 Javascript
用JS实现3D球状标签云示例代码
2013/12/01 Javascript
javascript作用域问题实例分析
2015/07/13 Javascript
javascript实现动态标签云
2015/10/16 Javascript
基于javascript如何传递特殊字符
2015/11/30 Javascript
AngularJS ng-change 指令的详解及简单实例
2016/07/30 Javascript
jQuery css() 方法动态修改CSS属性
2016/09/25 Javascript
vue制作加载更多功能的正确打开方式
2016/10/12 Javascript
巧用数组制作图片切换js代码
2016/11/29 Javascript
微信小程序 跳转传参数与传对象详解及实例代码
2017/03/14 Javascript
正则表达式基本语法及表单验证操作详解【基于JS】
2017/04/07 Javascript
Bootstrap实现下拉菜单多级联动
2017/11/23 Javascript
基于jQuery实现Ajax验证用户名是否可用实例
2018/03/25 jQuery
jQuery实现模糊查询的方法分析
2018/05/10 jQuery
echarts实现词云自定义形状的示例代码
2019/02/20 Javascript
浅析Vue 防抖与节流的使用
2019/11/14 Javascript
使用Vue+Django+Ant Design做一个留言评论模块的示例代码
2020/06/01 Javascript
Bootstrap告警框(alert)实现弹出效果和短暂显示后上浮消失的示例代码
2020/08/27 Javascript
python实时监控cpu小工具
2018/06/21 Python
Python利用递归实现文件的复制方法
2018/10/27 Python
Python中文编码知识点
2019/02/18 Python
python3+pyqt5+itchat微信定时发送消息的方法
2019/02/20 Python
CSS3实现的闪烁跳跃进度条示例(附源码)
2013/08/19 HTML / CSS
工商企业管理应届生求职信
2013/11/03 职场文书
《两只鸟蛋》教学反思
2014/02/10 职场文书
学校门卫岗位职责
2014/03/16 职场文书
和解协议书
2014/04/16 职场文书
1亿有多大教学反思
2014/05/01 职场文书
法学院毕业生求职信
2014/06/25 职场文书
地道战观后感500字
2015/06/04 职场文书
2019入党申请书范文3篇
2019/08/21 职场文书
CSS中实现动画效果-附案例
2022/02/28 HTML / CSS
JS前端可扩展的低代码UI框架Sunmao使用详解
2022/07/23 Javascript