Mongodb có thể được sử dụng với php không?
MongoDB là một lựa chọn tuyệt vời cho một số ứng dụng. Trong thế giới PHP, chúng ta cũng có thể thử một thứ gì đó hơn là chỉ một ngăn xếp LAMP và cung cấp cho các lược đồ cơ sở dữ liệu của chúng ta nhiều tự do hơn. Một trong những Trình ánh xạ quan hệ đối tượng (ORM) phổ biến nhất cho PHP là Học thuyết cũng có triển khai rất tốt Ánh xạ tài liệu đối tượng (ODM) cho MongoDB. Chúng tôi sẽ không đi vào chi tiết về những ưu điểm và nhược điểm của cơ sở dữ liệu NoSql và SQL nhưng hãy xem cách chúng tôi có thể xây dựng một ứng dụng rất đơn giản nếu chúng tôi đã quyết định sử dụng Mongo Show
jkapuscik2/mongo-shopping-cartĐóng góp cho sự phát triển của jkapuscik2/mongo-shopping-cart bằng cách tạo một tài khoản trên GitHubgithub. com Chúng tôi cần tạo một ứng dụng giỏ hàng với API REST cho phép chúng tôi
Chúng tôi cũng có một loạt các yêu cầu
Chúng tôi sẽ sử dụng khung Symfony vì nó tích hợp độc đáo với Doctrine ODM. Chúng ta có thể cài đặt thư viện và tạo cấu hình cơ bản bằng cách chạy các lệnh sau composer config extra.symfony.allow-contrib truecomposer require doctrine/mongodb-odm-bundle Chúng tôi sẽ truy cập cơ sở dữ liệu theo cách tương tự như với ORM trong Doctrine. Chúng tôi đang sử dụng các chú thích trong các mô hình sẽ chỉ ra các biến lớp nào sẽ được duy trì. Trong Theo mặc định, một bộ sưu tập có cùng tên với một mô hình sử dụng nó. Chúng tôi có thể tùy chỉnh hành vi này bằng cách cung cấp tham số
Học thuyết ODM làm cho việc khóa lạc quan cực kỳ đơn giản. Cơ chế đó sẽ đảm bảo rằng không ai sửa đổi mô hình cùng lúc với chúng tôi bằng cách so sánh thuộc tính Mô hình cho giỏ hàng phức tạp hơn một chút vì chúng tôi phải đảm bảo đáp ứng tất cả các quy tắc liên quan đến việc thêm và xóa sản phẩm. Chúng tôi có thể lưu trữ tham chiếu đến bộ sưu tập Sản phẩm trong Mongo hoặc sử dụng tài liệu được nhúng. Mỗi cách tiếp cận đều có ưu và nhược điểm. Chúng tôi phải lưu trữ dấu thời gian bổ sung sản phẩm mới để tài liệu được nhúng sẽ phù hợp với chúng tôi hơn. Hơn nữa, nó sẽ hiệu quả hơn Chúng tôi đang sử dụng dữ liệu về sản phẩm và tạo một tài liệu nhúng Vấn đề chúng tôi có thể gặp phải là đồng bộ hóa dữ liệu giữa các bộ sưu tập. Khi ai đó thay đổi tên của một sản phẩm, nó sẽ không được tự động phổ biến và chúng tôi sẽ thấy một tên lỗi thời trong giỏ hàng. Chúng tôi sẽ phải tạo cơ chế riêng để đảm bảo tính nhất quán của dữ liệu Chúng tôi đang duy trì các mô hình với Trình quản lý tài liệu Doctrine. Chúng tôi có thể sử dụng kho lưu trữ tùy chỉnh cho từng mô hình hoặc sử dụng kho lưu trữ tích hợp với các chức năng cơ bản. Để đơn giản, chúng tôi sẽ gắn bó với cái sau. Nếu cần tùy chỉnh nhiều hơn, chúng ta sẽ phải thêm tham số MongoDB tỏ ra rất hữu ích trong một số trường hợp sử dụng và có thể hoạt động tốt với PHP. Nó chắc chắn là một giải pháp thay thế thú vị cho hầu hết các công cụ cơ sở dữ liệu phổ biến trong các dự án PHP như MySql hoặc PostgreSQL Nếu bạn đang sử dụng PHP để xây dựng ứng dụng, bạn có thể muốn tương tác với cơ sở dữ liệu MongoDB trong mã của mình. May mắn thay, thật dễ dàng để kết nối với cơ sở dữ liệu MongoDB từ tập lệnh PHP chỉ với một chút thiết lập và cấu hình. Trong bài viết này, chúng tôi sẽ chỉ cho bạn cách thiết lập kết nối PHP và MongoDB để bạn có thể truy cập cơ sở dữ liệu MongoDB trong ứng dụng của mình điều kiện tiên quyếtTrước khi thử thiết lập kết nối giữa PHP và MongoDB, cần phải có một vài điều kiện tiên quyết cần thiết
Cài đặt trình điều khiển MongoDB PHPTrong phần này, chúng tôi sẽ bắt đầu quá trình thiết lập kết nối PHP và MongoDB bằng cách cài đặt trình điều khiển MongoDB PHP trên hệ thống của chúng tôi. Để thực hiện việc này, chúng tôi chỉ cần tải xuống tệp 'DLL' (Thư viện liên kết động) cần thiết có thể tìm thấy tại liên kết này. MongoDB PHP Chúng tôi sẽ đặt tệp đã tải xuống này vào một trong các thư mục cài đặt PHP của chúng tôi, chúng tôi sẽ thảo luận trong phần tiếp theo Định cấu hình PHP và MongoDB trong WindowsTiếp theo, hãy xem lại cách định cấu hình PHP theo cách cho phép kết nối với MongoDB trong môi trường Windows
Tạo cơ sở dữ liệu mẫu MongoDBBước tiếp theo của chúng tôi sẽ là tạo một tập dữ liệu mẫu mà chúng tôi có thể sử dụng trong hướng dẫn này Đầu tiên, chúng tôi sẽ kết nối với cơ sở dữ liệu có tên productdb Sau đó, chúng tôi có thể thực hiện thao tác insertMany() để thêm một số tài liệu giả mà chúng tôi có thể sử dụng cho mục đích demo. Hoạt động sẽ tạo bộ sưu tập db. Mỹ phẩm. insertMany( [ Thao tác này sẽ trả về một phản hồi giống như sau { Chúng tôi có thể xác minh rằng bộ sưu tập Chúng ta sẽ nhận được kết quả giống như thế này 1 { Kết nối với cơ sở dữ liệu MongoDBTrong phần này, chúng ta sẽ tạo một tập lệnh PHP đơn giản sẽ kết nối với cơ sở dữ liệu Hãy bắt đầu bằng cách tạo một thư mục mới có tên ‘phpmongo’ trong thư mục $mng = new MongoDB\Driver\Manager("mongodb. //máy chủ cục bộ. 27017"); $rows = $mng->executeQuery("productdb. sản phẩm", $qry); foreach ($rows as $row) { foreach ($rows as $row) { } ?> Mã hiển thị ở trên sẽ đọc dữ liệu từ bộ sưu tập 'sản phẩm' tồn tại trong cơ sở dữ liệu 'productdb'. Hãy xem xét kỹ hơn những gì đang xảy ra trong kịch bản này
Kết quả sẽ giống như sau Phần kết luậnKhi bạn đang viết mã PHP và cần tương tác với cơ sở dữ liệu, MongoDB là một lựa chọn tự nhiên. May mắn thay, chỉ cần vài bước đơn giản để tạo kết nối giữa PHP và MongoDB. Trong bài viết này, chúng tôi đã hướng dẫn bạn toàn bộ quá trình tạo kết nối PHP và MongoDB, đồng thời chúng tôi đã cung cấp một ví dụ mã bao gồm một truy vấn MongoDB điển hình. Với các hướng dẫn và ví dụ về mã này để hướng dẫn bạn, bạn sẽ có thể viết mã PHP có thể truy vấn cơ sở dữ liệu MongoDB của riêng bạn Làm cách nào để bật MongoDB trong PHP?Bắt đầu thiết lập để chạy PHP với MongoDB . điều kiện tiên quyết Cài đặt Cài đặt Apache đang cài đạt PHP Cài đặt tiện ích mở rộng PHP Cài đặt thư viện MongoDB PHP Bắt đầu cụm MongoDB trên Atlas Bảo mật tên người dùng và mật khẩu Làm cách nào để chèn dữ liệu vào MongoDB bằng PHP?Tạo hoặc chèn một tài liệu MongoDB duy nhất bằng PHP
. phương thức insertOne() chèn một tài liệu duy nhất vào MongoDB và trả về một phiên bản MongoDBInsertOneResult, mà bạn có thể sử dụng để truy cập ID của tài liệu được chèn. Đầu ra bao gồm ID của tài liệu được chèn
Làm cách nào để cập nhật dữ liệu trong MongoDB bằng PHP?Cách cập nhật nhiều tài liệu MongoDB bằng PHP . Tập lệnh MongoDBDeriverManager sẽ cập nhật các tài liệu phù hợp với tiêu chí đã chỉ định khi đa tham số được đặt thành true Phương thức updateMany() của Thư viện PHP sẽ cập nhật tất cả các tài liệu phù hợp với tiêu chí đã chỉ định Làm cách nào để kết nối MongoDB với PHP trong 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 |