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中常用编辑器推荐
Jan 02 PHP
php面向对象全攻略 (七) 继承性
Sep 30 PHP
php与mysql建立连接并执行SQL语句的代码
Jul 04 PHP
PHP中用hash实现的数组
Jul 17 PHP
phpexcel导出excel的颜色和网页中的颜色显示不一致
Dec 11 PHP
微信公众平台网页授权获取用户基本信息中授权回调域名设置的变动
Oct 21 PHP
php实现QQ空间获取当前用户的用户名并生成图片
Jul 25 PHP
php中define用法实例
Jul 30 PHP
Zend Framework动作助手(Zend_Controller_Action_Helper)用法详解
Mar 05 PHP
浅谈Laravel中的一个后期静态绑定
Aug 11 PHP
PHP实现的自定义图像居中裁剪函数示例【测试可用】
Aug 11 PHP
PDO::prepare讲解
Jan 29 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
评分9.0以上的动画电影,剧情除了经典还很燃
2020/03/04 日漫
Yii2实现ActiveForm ajax提交
2017/05/26 PHP
php7函数,声明,返回值等新特性介绍
2018/05/25 PHP
实例讲解PHP表单
2020/06/10 PHP
二行代码解决全部网页木马
2008/03/28 Javascript
jQuery 性能优化手册 推荐
2010/02/23 Javascript
js Html结构转字符串形式显示代码
2011/11/15 Javascript
js 浏览本地文件夹系统示例代码
2013/10/24 Javascript
回车直接实现点击某按钮的效果即触发单击事件
2014/02/27 Javascript
用javascript对一个json数组深度赋值示例
2014/07/27 Javascript
javascript实现类似于新浪微博搜索框弹出效果的方法
2015/07/27 Javascript
JavaScript中数组slice和splice的对比小结
2016/09/22 Javascript
NodeJS中的MongoDB快速入门详细教程
2016/11/11 NodeJs
AngularJS中的按需加载ocLazyLoad示例
2017/01/11 Javascript
微信小程序tabBar用法实例详解
2017/12/04 Javascript
vue实现重置表单信息为空的方法
2018/09/29 Javascript
基于JS实现父组件的请求服务过程解析
2019/10/14 Javascript
微信小程序反编译的实现
2020/12/10 Javascript
利用Python实现Windows定时关机功能
2017/03/21 Python
非递归的输出1-N的全排列实例(推荐)
2017/04/11 Python
pytorch + visdom CNN处理自建图片数据集的方法
2018/06/04 Python
Python实现的逻辑回归算法示例【附测试csv文件下载】
2018/12/28 Python
jupyter notebook 多环境conda kernel配置方式
2020/04/10 Python
HTML5 Canvas旋转动画的2个代码例子(一个旋转的太极图效果)
2014/04/10 HTML / CSS
美国家喻户晓的保健品品牌:Vitamin World(维他命世界)
2016/08/19 全球购物
美国沙龙美发产品购物网站:Hair.com by L’Oreal
2020/11/09 全球购物
员工自我鉴定
2013/10/09 职场文书
外贸英语毕业生自荐信
2013/11/14 职场文书
副总经理工作职责
2013/11/28 职场文书
《在山的那边》教学反思
2014/02/23 职场文书
法院信息化建设方案
2014/05/21 职场文书
维护民族团结演讲稿
2014/08/27 职场文书
2014班子成员自我剖析材料思想汇报
2014/10/01 职场文书
八年级作文之感悟亲情
2019/11/20 职场文书
redis使用不当导致应用卡死bug的过程解析
2021/07/01 Redis
CSS控制继承中的height能变为可继承吗
2022/06/10 HTML / CSS