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用GD库生成高质量的缩略图片
Mar 09 PHP
11个PHP 分页脚本推荐
Aug 15 PHP
PHP类与对象中的private访问控制的疑问
Nov 01 PHP
解决FastCGI 进程超过了配置的活动超时时限的问题
Jul 03 PHP
php打开远程文件的方法和风险及解决方法
Nov 12 PHP
PHP中的reflection反射机制测试例子
Aug 05 PHP
THINKPHP2.0到3.0有哪些改进之处
Jan 04 PHP
PHP中让curl支持sock5的代码实例
Jan 21 PHP
smarty内置函数config_load用法实例
Jan 22 PHP
PHP使用JSON和将json还原成数组
Feb 12 PHP
php实现爬取和分析知乎用户数据
Jan 26 PHP
PHP提取字符串中的手机号正则表达式怎么写
Jul 17 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
PHP安装攻略:常见问题解答(一)
2006/10/09 PHP
php allow_url_include的应用和解释
2010/04/22 PHP
PHP四舍五入、取整、round函数使用示例
2015/02/06 PHP
详解WordPress开发中过滤属性以及Sql语句的函数使用
2015/12/25 PHP
php字符串的替换,分割和连接方法
2016/05/23 PHP
javascript让setInteval里的函数参数中的this指向特定的对象
2010/01/31 Javascript
iframe自适应宽度、高度 ie6 7 8,firefox 3.86下测试通过
2010/07/29 Javascript
Jquery easyui 下loaing效果示例代码
2013/08/12 Javascript
jquery图形密码实现方法
2015/03/11 Javascript
使用JQuery在线制作ppt并在线演示源码特效
2015/09/08 Javascript
解决JavaScript数字精度丢失问题的方法
2015/12/03 Javascript
初识angular框架后的所思所想
2016/02/19 Javascript
BootStrap入门教程(三)之响应式原理
2016/09/19 Javascript
Bootstrap 3 按钮标签实例代码
2017/02/21 Javascript
vue组件之Alert的实现代码
2017/10/17 Javascript
JavaScript面向对象继承原理与实现方法分析
2018/08/09 Javascript
解决layui中的form表单与button的点击事件冲突问题
2018/08/15 Javascript
详解Vue源码之数据的代理访问
2018/12/11 Javascript
Vue框架下引入ActiveX控件的问题解决
2019/03/25 Javascript
vue2.0 获取从http接口中获取数据,组件开发,路由配置方式
2019/11/04 Javascript
Python读写Redis数据库操作示例
2014/03/18 Python
python数据分析工具之 matplotlib详解
2020/04/09 Python
python字典通过值反查键的实现(简洁写法)
2020/09/30 Python
兰芝美国网上商城:购买LANEIGE睡眠面膜等
2017/06/30 全球购物
英国鞋网:Rubber Sole
2020/03/03 全球购物
团支部建设方案
2014/05/02 职场文书
资助贫困学生倡议书
2014/05/16 职场文书
教师三严三实对照检查材料
2014/09/25 职场文书
租车协议书
2015/01/27 职场文书
公司文体活动总结
2015/05/07 职场文书
数学复习课教学反思
2016/02/18 职场文书
PyTorch 如何检查模型梯度是否可导
2021/06/05 Python
使用pycharm运行flask应用程序的详细教程
2021/06/07 Python
Nginx location 和 proxy_pass路径配置问题小结
2021/09/04 Servers
请求模块urllib之PYTHON爬虫的基本使用
2022/04/08 Python
BCL经典机 SONY ICF-5900W电路分析
2022/04/24 无线电