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 相关文章推荐
PHP4和PHP5性能测试和对比 测试代码与环境
Aug 17 PHP
PHP中Date获取时间不正确怎么办
Jun 05 PHP
创建数据库php代码 用PHP写出自己的BLOG系统
Apr 12 PHP
在PHP中PDO解决中文乱码问题的一些补充
Sep 06 PHP
PHP JSON格式数据交互实例代码详解
Jan 13 PHP
PHP中MVC模式的模板引擎开发经验分享
Mar 23 PHP
几个有用的php字符串过滤,转换函数代码
May 01 PHP
Yii中CGridView关联表搜索排序方法实例详解
Dec 03 PHP
PHP中使用php5-ffmpeg撷取视频图片实例
Jan 07 PHP
php使用递归函数实现数字累加的方法
Mar 16 PHP
php使用CURL不依赖COOKIEJAR获取COOKIE的方法
Jun 17 PHP
PHP中session跨子域的三种实现方法
Jul 25 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
Can't create/write to file 'C:\WINDOWS\TEMP\...MYSQL报错解决方法
2011/06/30 PHP
ThinkPHP中的三大自动简介
2014/08/22 PHP
PHP登录验证码的实现与使用方法
2016/07/07 PHP
PHP类的特性实例分析
2016/09/28 PHP
Laravel框架路由设置与使用示例
2018/06/12 PHP
在Laravel5.6中使用Swoole的协程数据库查询
2018/06/15 PHP
javascript函数库-集合框架
2007/04/27 Javascript
[HTML/CSS/Javascript]WWTJS
2007/09/25 Javascript
Prototype Function对象 学习
2009/07/12 Javascript
一个可以兼容IE FF的加为首页与加入收藏实现代码
2009/11/02 Javascript
js中的布尔运算符使用介绍
2013/11/20 Javascript
jQuery实现点击小图显示大图代码分享
2015/08/25 Javascript
js实现超简单的展开、折叠目录代码
2015/08/28 Javascript
教你JS中的运算符乘方、开方及变量格式转换
2016/08/09 Javascript
详解JavaScript的内置对象
2016/12/07 Javascript
jQuery在header中设置请求信息的方法
2017/03/06 Javascript
详解express与koa中间件模式对比
2017/08/07 Javascript
详解最新vue-cli 2.9.1的webpack存在问题
2017/12/16 Javascript
JS简单获取并修改input文本框内容的方法示例
2018/04/08 Javascript
jQuery ajax仿Google自动提示SearchSuggess功能示例
2019/03/28 jQuery
layer扩展打开/关闭动画的方法
2019/09/23 Javascript
PYTHON压平嵌套列表的简单实现
2016/06/08 Python
Python3编程实现获取阿里云ECS实例及监控的方法
2017/08/18 Python
pytorch + visdom CNN处理自建图片数据集的方法
2018/06/04 Python
对Python中Iterator和Iterable的区别详解
2018/10/18 Python
TensorFlow基本的常量、变量和运算操作详解
2020/02/03 Python
工程造价与管理专业应届生求职信
2013/11/23 职场文书
网吧消防安全制度
2014/01/28 职场文书
关于学习的决心书
2015/02/05 职场文书
个人维稳承诺书
2015/05/04 职场文书
2015年科研工作总结范文
2015/05/13 职场文书
2015年学校信息技术工作总结
2015/05/25 职场文书
七年级作文之环保作文
2019/10/17 职场文书
教你怎么用Python操作MySql数据库
2021/05/31 Python
简单聊一聊SQL注入及防止SQL注入
2022/03/23 MySQL
Python可视化神器pyecharts绘制地理图表
2022/07/07 Python