今天小编就为大家分享一篇Laravel框架中集成MongoDB和使用详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
* 推荐组件
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和使用详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持编程学习网。
本文标题为:Laravel框架中集成MongoDB和使用详解
基础教程推荐
- thinkphp3.2.3框架动态切换多数据库的方法分析 2023-03-19
- PHP命名空间简单用法示例 2022-12-01
- PHP获取MySQL执行sql语句的查询时间方法 2022-11-09
- PHP实现Redis单据锁以及防止并发重复写入 2022-10-12
- 在Laravel中实现使用AJAX动态刷新部分页面 2023-03-02
- 使用PHP开发留言板功能 2023-03-13
- php array分组,PHP中array数组的分组排序 2022-08-01
- PHP中的错误及其处理机制 2023-06-04
- laravel 解决多库下的DB::transaction()事务失效问题 2023-03-08
- laravel ORM关联关系中的 with和whereHas用法 2023-03-02