trong laravel nếu bạn muốn nạp mongo db vào trong hệ thống để đỡ phải call api qua lại giữa nhiều nền tảng thì bạn cài hẳn cái extention để có thể connect vào mongo.

Cài đặt mongo cho php laravel

2021-06-28 1475 lượt xem
Trương Thanh Hùng

Cách cài extention mongo driver

Mặc định PHP không hỗ trợ MongoDB, nên muốn sử dụng được MongoDB trong dự án PHP thì chúng ta cần phải cài đặt và thiết lập nó vào trong PHP.

1. windows

truy cập vào link sau: https://pecl.php.net/package/mongodb/1.3.0/windows 

 chọn một trong các tùy trọn gói sau:

Lưu ý: Windows bạn cài xampp thì thường dùng 32 bit, tức là bạn cần phải tải các phiên bản X86. nghĩa là khi mình dùng php 7.1 thì download bản này vè : 7.1 Thread Safe (TS) x86. Lưu ý là tùy vào phiên bản php bạn đang dùng mà bạn nên chọn download cho đúng version. (thay đổi link https://pecl.php.net/package/mongodb/1.6.0/windows ) các version hộ trợ thì như sau: 

Download về được cái file thần thánh php_mongodb.dll thì quăng vào folder ext của xampp 

Tiếp đó kích hoạt extention trong php.init: (vào php.init thêm 1 dòng vào cuối)

extension=php_mongodb.dll

Nếu bạn dùng mac thì cũng có thể cài mongodb driver bằng pecl cho tiện:

sudo pecl install mongodb

nếu lỗi thì có thể xem thử xem giống lỗi mình không : 

https://ebudezain.com/loi-cai-dat-tien-ich-mo-rong-php-va-pecl-tren-macos#pecl-error-mkdir 

Cài công cụ cho laravel connect mongo

Cài đặt package jenssegers/mongodb cho Laravel. Đây là thư viện giúp cho Laravel có thể thao tác với MongoDB. Cài đặt thông qua Composer: 

composer require jenssegers/mongodb

Nếu bạn gặp lỗi thì sau khi search trên github mình thấy cách này có vẻ ổn : 

composer require jenssegers/mongodb:dev-develop

Nếu cài xong chạy mà bạn biết bạn cài thành công nhưng vào laravel chạy mà dính lỗi như hình thì bạn đang chạy không đúng phiên bản yêu cầu tối thiểu:

Ý nói của hình là phiên bản bạn nên dùng là lớn hơn hoặc bằng 1.12.0 => link download lại sẽ là : https://pecl.php.net/package/mongodb/1.12.0/windows

Cứ download và làm lại thôi :D

chú ý thêm nếu gặp lỗi mặc dù đã cài đặt thành công nhưng windows có lỗi khá khó chịu khi chưa cài mongodb 

link tham khỏa : https://stackoverflow.com/questions/54566245/composer-cant-find-mongodb-extension-required-mongodb-extension

composer require jenssegers/mongodb --ignore-platform-reqs

không được nữa thì xem lại phiên bản laravel của bạn có hộ trợ không? 

đây là bản hộ trợ dành cho các phiên bản laravel : 

 

Hiện tại thì gói này đang hộ trợ phiên bản laravel 6 và 8. Bạn mà code laravel 7 thì say goodbye luôn nha 😄 

bài viết trong chủ đề