lumen安裝mongodb數據庫


1.添加composer依賴(jenssegers/mongodb):

composer require jenssegers/mongodb
或者
在composer文件添加"jenssegers/mongodb": "3.6",然后執行composer update

 

2.注冊MongodbServiceProvider (需要注冊在$app->withEloquent();之前

 

$app->register(Jenssegers\Mongodb\MongodbServiceProvider::class);
$app->withEloquent();

3.配置database(config/database.php)

 

connections 追加: 'mongodb' => 
[ 
        //MongoDB 'driver' => 'mongodb', 
        'host' => '127.0.0.1', 
        'port' => 27017, 
        'username' => '', 
        'password' => '', 
        'database' => 'test', 
        //demodb 'options' => [] 
],

 

4.項目中如何使用:

1): 直接在代碼中使用DB類連接對應的連接名,然后進行相應的操作:

 

$mongodb = DB::connection('mongodb');  // 獲得mongodb的連接
$db = $mongodb->collection('user');    // 連接user數據庫

$db->insert(['title' => 'email', 'article' => 'john@example.com','time' => time()]);
// 錄入數據

dd($db->get());
dd($db->where('title', 'email')->get());

// 獲取相關數據記錄
2). 直接封裝在model中,這樣可以代碼更加簡潔

class TestModel extends Model
{
    protected $table = 'user';

    public static function connectMongo($table)
    {
        return $users = DB::connection('mongodb')->collection($table);
    }
}

這樣代碼中調用的時候使用靜態方法獲取mongodb連接,然后進行相關操作,默認的話仍然操作Mysql數據庫。調用代碼范例如下:

$testModel = TestModel::connectMongo('user');
$testModel->insert(['title' => 'email1', 'article' => 'john@example.com','time' => time()]);

dd($testModel->where('title', 'email1')->get());

 

centos7 寶塔php7安裝mongodb擴展

下載擴展

wget -c https://pecl.php.net/get/mongodb-1.5.3.tgz
tar -zxvf mongodb-1.5.3.tgz

編譯安裝

cd mongodb-1.5.3
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install

修改php.ini

vim /usr/local/php//etc/php.ini
extension = /usr/local/php//lib/php/extensions/no-debug-non-zts-20151012/mongodb.so

service php-fpm restart


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2026 CODEPRJ.COM