Laravel?框架中使用?MongoDB?數(shù)據(jù)庫的操作
1、先確定好自己使用的哪個版本的 Laravel 框架,再決定 composer 哪一個的 MongoDB,我使用的是 Laravel 8 所以我 composer 了 3.8 的MongoDb
2、執(zhí)行 composer 命令,進行下載,我是用的是第二個命令
composer require jenssegers/mongodb ^3.8 -vvv
composer require jenssegers/mongodb:3.8 --ignore-platform-reqs
3、這個時候可能會報錯,所以要做以下操作
- php先安裝mongodb擴展(連接的服務(wù)器或本地需要先安裝mongodb)
- 下載地址:https://pecl.php.net/package/mongodb
- 在這里根據(jù)你的 PHP 版本進行選擇,我的是 7.3.4 的,所以我選擇 1.6.0 的
點進去拉到最下方
4、將下載到的壓縮包內(nèi)的 php_mongodb.dll 文件復制到 php7.3.4 下的ext文件夾內(nèi)
5、在php.ini中寫入extension=mongodb
6、cmd 執(zhí)行 php -v 查看運行是否正常
7、再次使用 composer 命令下載,如果不出意外的話,可以看到:
8、這樣就是安裝成功了
9、注冊服務(wù) ,在app/config/app.php文件
Jenssegers\Mongodb\MongodbServiceProvider::class
'Mongo' => Jenssegers\Mongodb\MongodbServiceProvider::class,
10、修改數(shù)據(jù)庫配置文件 config/database.php 中
'mongodb' => [ 'driver' => 'mongodb', 'host' => env('MONGODB_HOST', '127.0.0.1'), 'port' => env('MONGODB_POST', '27017'), 'database' => env('MONGODB_DB', 'phone'), 'username' => env('MONGODB_USER', ''), 'password' => env('MONGODB_PASSWORD', ''), ],
11、在 .env 文件中加入
MONGODB_HOST=127.0.0.1 MONGODB_POST=27017 MONGODB_DB=phone DB_USERNAME= DB_PASSWORD=
12、接下來就可以在控制器中使用了
//添加 pubulic function index(){ DB::connection('mongodb') //選擇使用mongodb ->collection('users') //選擇使用users集合 ->insert([ //插入數(shù)據(jù) 'name' => 'tom', 'age' => 18 ]); } $res = DB::connection('mongodb')->collection('phone')->get()->toArray(); //查詢所有數(shù)據(jù) dd($res);
13、查詢時也可以增加查詢條件
$res = DB::connection('mongodb')->collection('phone')->where('name','tom')->first();
14、修改某個數(shù)據(jù)
DB::connection('mongodb')->collection('phone')->where('_id', '5cf71b34e14620598643d23b')->update(['name'=>'123']);
15、刪除某個數(shù)據(jù)
$res = DB::connection('mongodb')->collection('phone')->where('name','tom')->delete();
16、我們也可以使用模型層來操作,新建一個模型層
<?php namespace App\Model; use Moloquent; use DB; class Users extends Model { protected $connection = 'mongodb'; //庫名 protected $collection = 'phone'; //文檔名 protected $primaryKey = '_id'; //設(shè)置id protected $fillable = ['id', 'name', 'phone']; //設(shè)置字段白名單 }
17、在控制器中這樣使用:
public function index(){ Users::create([ //插入數(shù)據(jù) 'id' =>1, 'name' =>'tom', 'phone' =>110]); } dd(Users::all()); //查詢并打印數(shù)據(jù)
18、最后,我們也可以在可視化工具中查看數(shù)據(jù)
到此這篇關(guān)于Laravel 框架中使用 MongoDB 數(shù)據(jù)庫的文章就介紹到這了,更多相關(guān)Laravel使用 MongoDB 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
剖析后OpLog訂閱MongoDB的數(shù)據(jù)變更就沒那么難了
這篇文章主要為介紹了OpLog訂閱MongoDB的數(shù)據(jù)變更,希望讀完本文后讓你對OpLog訂閱MongoDB的數(shù)據(jù)變更不在頭疼,有需要的朋友可以借鑒參考下,希望能夠有所幫助2022-02-02MongoDB數(shù)據(jù)庫插入、更新和刪除操作詳解
這篇文章主要介紹了MongoDB數(shù)據(jù)庫插入、更新和刪除操作詳解,需要的朋友可以參考下2014-03-03Linux服務(wù)器快速安裝MongoDB5.0版本過程步驟
這篇文章主要為大家介紹了Linux服務(wù)器快速安裝MongoDB5.0版本過程步驟詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-12-12