Laravel使用Mongodb非关系型数据库-折腾笔记

一、硬件环境

操作系统:Windows10
PHP环境:phpstudy 20161103版
laravel版本:5.3
php版本:PHP Version 5.6.27 nts (Non Thread Safe (NTS) x86)
php位数:x86

二、安装php mongodb拓展插件

1、下载php_mongodb.dll

下载地址:http://pecl.php.net/package/mongodb

下载最新版DLL:

选择博主电脑对应的dll版本:

下载解压缩后,将php_mongodb.dll复制到phpstudy php 扩展路径(可在php.ini看到)

博主php ext路径为:D:\phpStudy20161103\php\php-5.6.27-nts\ext\php_mongodb.dll

2、php.ini配置

打开php.ini,插入

extension=php_mongodb.dll

 

3、重启apache php即可

在phpinfo页面即可看到mongodb扩展已经添加成功!

三、配置laravel mongodb

参考链接:https://github.com/jenssegers/laravel-mongodb

1、使用composer安装laravel-mongodb插件

在laravel项目HOME目录下,执行composer命令:

composer require jenssegers/mongodb

如果mongodb dll扩展安装正确,则会直接安装,否则会提示mongodb扩展未找到。

2、编辑laravel项目config/app.php文件,插入以下 service provider

Jenssegers\Mongodb\MongodbServiceProvider::class,
Jenssegers\Mongodb\MongodbQueueServiceProvider::class,

Tip:由于博主仅用query查询数据库,不适用ORM,所以此处添加了MongodbQueueServiceProvider::class,

3、编辑config/database.php

添加

        'mongodb' => [
            'driver'   => 'mongodb',
            'host'     => env('MONGODB_DB_HOST', 'localhost'),
            'port'     => env('MONGODB_DB_PORT', 27017),
            'database' => env('MONGODB_DB_DATABASE'),
            'username' => env('MONGODB_DB_USERNAME'),
            'password' => env('MONGODB_DB_PASSWORD'),
            'options'  => [
                'database' => 'admin' // sets the authentication database required by mongo 3
            ]
        ],

4、编辑.env添加

MONGODB_DB_HOST="192.168.3.150"
MONGODB_DB_PORT="27017"
MONGODB_DB_DATABASE="mycol5"
MONGODB_DB_USERNAME=""
MONGODB_DB_PASSWORD=""

5、读取Mongodb数据库测试

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use DB;
use App\Http\Requests;

class HistoryController extends BasicController
{

    public function Index(Request $request)
    {
        $RecordsTotal=DB::connection("mongodb")->collection('realtimte')->get();;

        return var_dump($RecordsTotal);
    }
}

成功读取数据:

参考链接


  1. http://pecl.php.net/package/mongodb/
  2. http://php.net/manual/en/mongodb.installation.windows.php
  3. https://github.com/jenssegers/laravel-mongodb
  4. https://docs.mongodb.com/php-library/master/tutorial/commands/