Tiện ích mở rộng mongodb cho php 8

Phần mở rộng này được phát triển trên các thư viện libmongoc và libbson. Nó cung cấp một API tối thiểu cho chức năng trình điều khiển cốt lõi. lệnh, truy vấn, ghi, quản lý kết nối và tuần tự hóa BSON

Các thư viện Userland PHP phụ thuộc vào tiện ích mở rộng này có thể cung cấp API cấp cao hơn, chẳng hạn như trình tạo truy vấn, phương thức trợ giúp lệnh riêng lẻ và GridFS. Các nhà phát triển ứng dụng nên cân nhắc sử dụng tiện ích mở rộng này cùng với thư viện MongoDB PHP, thư viện này triển khai cùng các API cấp cao hơn được tìm thấy trong trình điều khiển MongoDB cho các ngôn ngữ khác

Tài liệu

  • https. //php. mạng/thủ công/vi/bộ. mongodb. php
  • https. // tài liệu. mongodb. com/hệ sinh thái/trình điều khiển/php/

Cài đặt

Để xây dựng và cài đặt trình điều khiển

$ pecl install mongodb
$ echo "extension=mongodb.so" >> `php --ini | grep "Loaded Configuration" | sed -e "s|.*:\s*||"`

Hướng dẫn cài đặt bổ sung có thể được tìm thấy trong PHP. tài liệu mạng

Tiện ích mở rộng này dự định sẽ được sử dụng cùng với Thư viện MongoDB PHP, được phân phối dưới dạng gói mongodb/mongodb cho Composer

Vấn đề báo cáo

Các vấn đề liên quan đến tiện ích mở rộng phải được báo cáo trong dự án PHPC trong JIRA của MongoDB. Các vấn đề liên quan đến thư viện nên được báo cáo trong dự án PHPLIB

Đối với các câu hỏi chung và yêu cầu hỗ trợ, vui lòng sử dụng một trong các kênh Hỗ trợ kỹ thuật của MongoDB

Lỗ hổng bảo mật

Nếu bạn đã xác định được lỗ hổng bảo mật trong trình điều khiển hoặc bất kỳ dự án MongoDB nào khác, vui lòng báo cáo lỗ hổng đó theo hướng dẫn trong Tạo báo cáo lỗ hổng

Phát triển

Sự phát triển được theo dõi trong dự án PHPC trong JIRA của MongoDB. Tài liệu đóng góp cho dự án này có thể được tìm thấy trong ĐÓNG GÓP. md

Nhóm PHP vui mừng thông báo rằng phiên bản 1. 15. 0 của phần mở rộng PHP mongodb hiện đã có trên PECL

Phát hành nổi bật

Các loại trả lại dự kiến ​​đã được thêm vào các giao diện trong toàn bộ tiện ích mở rộng. Các ứng dụng không thể khai báo kiểu trả về tương thích trong quá trình triển khai của chúng sẽ cần chỉ định thuộc tính ReturnTypeWillChange trên mỗi phương thức để tắt thông báo ngừng sử dụng trên PHP 8. 1+

Bản phát hành này thêm một số phương thức mới vào MongoDB\Driver\ClientEncryption, tạo điều kiện thuận lợi cho các hoạt động quản lý khóa trên bộ sưu tập kho lưu trữ khóa. Các phương thức này phản chiếu các API hiện có trong trình bao MongoDB

Các phép liệt kê được hỗ trợ hiện được hỗ trợ trong quá trình mã hóa BSON và sẽ tuần tự hóa thành giá trị trường hợp của chúng. Xoay vòng một enum được hỗ trợ thông qua BSON sẽ yêu cầu xử lý đặc biệt (e. g. chuyển đổi giá trị thành trường hợp bằng cách sử dụng

pecl upgrade mongodb-1.15.0
0). Các enum thuần túy, không có trường hợp được hỗ trợ, không thể được nối tiếp trực tiếp. Enums bị cấm triển khai MongoDB\BSON\Unserializable và MongoDB\BSON\Persistable, nhưng có thể triển khai MongoDB\BSON\Serializable

pecl upgrade mongodb-1.15.0
1 không còn yêu cầu tham số
pecl upgrade mongodb-1.15.0
2 và sẽ mặc định là
pecl upgrade mongodb-1.15.0
3

Bản phát hành này nâng cấp các phụ thuộc libbson và libmongoc của chúng tôi lên 1. 23. 1. Phần phụ thuộc libmongocrypt đã được nâng cấp lên 1. 5. 2

Bạn có thể tìm thấy danh sách đầy đủ các sự cố đã giải quyết trong bản phát hành này tại. https. //jira. mongodb. org/secure/ReleaseNote. jspa?projectId=12484&version=31694

Quy ước đặt tên của PHP không nhất quán khủng khiếp. Vì vậy, để làm cho các lệnh được liệt kê bên dưới hoạt động với bạn, vui lòng đảm bảo

  1. Hệ điều hành của bạn là Ubuntu 20. 08
  2. Phiên bản PHP của bạn là 8. 0
Ảnh của Ben Griffiths trên Bapt

Hãy bắt đầu với lỗi

PHP Fatal error:  Uncaught Error: Class "MongoDB\Driver\Manager" not found in /var/www/dnx-mailer/vendor/mongodb/mongodb/src/Client.php:130
Stack trace:
#0 /var/www/dnx-mailer/sendInvitation.php(10): MongoDB\Client->__construct()
#1 {main}
  thrown in /var/www/dnx-mailer/vendor/mongodb/mongodb/src/Client.php on line 130

Thật dễ dàng để biết

  1. Bạn đang sử dụng nhà soạn nhạc
  2. Rất tiếc là composer require mongodb/mongodb không cài được mongodb extension cho bạn. Vì vậy, bạn sẽ cần phải làm điều này của riêng bạn

Không chắc có cách nào khác không, tôi hy vọng nó có thể được cài đặt trước apt-get , chẳng hạn như apt-get install php-mongodb, or php8.0-mongodb (bạn hiểu ý tôi mà - Quy ước đặt tên của PHP thật kinh khủng. ) Nếu bạn muốn tiết kiệm thời gian, hãy thực hiện việc này thông qua PECL (cảnh báo - trang web của họ rất cũ, như năm 1998. ) Làm thế nào để cài đặt PECL?

của bạn đây. (một lần nữa, bạn có thể nghĩ nó sẽ là php8. 0-lê, nhưng không phải. )

apt-get install php-pear 

Được rồi tôi có thể chạy

apt-get install php-pear 
0 ngay bây giờ không? . chưa, nếu không, bạn sẽ thấy lỗi này

________số 8_______

Có người nói, đó là do thiếu php-xml, vì vậy hãy cài đặt như sau, có thể là trên php8. 0-xml là cần thiết, nhưng vẫn cài đặt chúng và vâng, chúng tôi cần chỉ định php8. 0-xxx

apt-get install php8.0-fpm libapache2-mod-php8.0 php8.0-mysql php8.0-xml

Bây giờ chúng ta có tốt không? . Có một lỗi khác

running: phpize
sh: 1: phpize: not found
ERROR: `phpize' failed

Chúng tôi cần php-dev,

apt-get install php8.0-dev // or php-dev works too, not sure if they are the same

Cuối cùng, chạy

pecl install mongodb

Bước cuối cùng là thêm nó vào php. ini, vì tôi chỉ dùng nó cho CLI nên tôi thêm “extension=mongodb. vậy” thành “/etc/php/8. 0/cli/php. ini”

Hi vọng điêu nay co ich

Cập nhật 19/09/2022

Chỉ cần thiết lập một máy chủ LAMP khác, tại thời điểm này, tôi đang sử dụng PHP8. 1, quy trình trên vẫn hợp lệ, nhưng chỉ cần nhớ thay đổi “8. 0” đến “8. 1”. Dưới đây là ghi chú bổ sung

Làm cách nào để cài đặt tiện ích mở rộng MongoDB cho PHP?

Cài đặt thủ công . tập tin ini. Mở tệp trong trình soạn thảo văn bản yêu thích của bạn và biến extension_dir đang trỏ đến vị trí của mongo . Vì thế. Ngoài ra, thêm 'extension=mongo. so' trong một tệp, lưu và khởi động lại máy chủ web của bạn.

MongoDB có tương thích với PHP không?

Bạn có thể thêm trình điều khiển vào ứng dụng của mình để hoạt động với MongoDB trong PHP . Trình điều khiển MongoDB PHP bao gồm hai thành phần sau. Tiện ích mở rộng , cung cấp API cấp thấp và chủ yếu dùng để tích hợp libmongoc và libbson với PHP.

Làm cách nào để cài đặt tiện ích mở rộng PHP MongoDB trên Windows?

1 câu trả lời .
Tải xuống trình điều khiển mongo cho Windows từ pecl. php. mạng lưới. .
Giải nén phiên bản trình điều khiển mongo đã tải xuống và sao chép. dll sang XAMPP. .
Đăng ký mongodb. dll trong php. ini Thêm dòng sau vào php. tập tin ini. .
Khởi động lại XAMPP và làm mới phpinfo. .
Cài đặt MongoDB trên Windows

Làm cách nào để cài đặt tiện ích mở rộng MongoDB trong PHP Ubuntu?

Cách thiết lập Apache, PHP & MongoDB trên Ubuntu 20. 04 .
điều kiện tiên quyết
Cập nhật hệ thống
Cài đặt máy chủ web Apache
Cài đặt PHP 8 với Mô-đun MongoDB
Cài đặt máy chủ cơ sở dữ liệu MongoDB
Tạo tệp PHPINFO