Hướng dẫn dùng filter mongodb trong PHP
- PHP là viết tắt của chữ "Hypertext Preprocessor", đây là một ngôn ngữ lập trình được sử dụng để viết ở phía máy chủ (server side). Và PHP là một open source, nên chính vì thế nó có tính cộng đồng của nó cao và đồng thời cũng sẽ có rất nhiều các framawork, CMS hỗ trợ như Laravel, Wordpress. - MongoDB là một hệ quản trị cơ sở dữ liệu mã nguồn mở thuộc học NoSQL. Nó được thiết kế
theo kiểu hướng đối tượng, các bảng trong MongoDB được cấu trúc rất linh hoạt, cho phép các dữ liệu lưu trữ trên bảng không cần tuân theo một cấu trúc nhất định nào cả (điều này rất thích hợp để làm big data). Series này sẽ hướng dẫn mọi người cách Kết nối PHP đến MongoDB. Và đọc, ghi, sửa, xóa (CRUD) dữ liệu trên MongoDB sử dụng PHP. Bài trước, mình đã giới thiệu với mọi người cách update documnent trong mongodb rồi. Tiếp tục với bài này mình sẽ giới thiệu với mọi người cách query lấy dữ liệu trong MongoDB ra sử dụng PHP. Trong bài viết này mình sẽ demo trên data mẫu như sau: Để có thể query dữ liệu trong MongoDB ra
thì chúng ta sẽ sử dụng 2 phương thức 1, findOne()- Phương thức này cho phép chúng ta truy vấn và trả về lớn nhất 1 bản ghi. Nó tương tự như câu truy vấn sau trong SQL.
Cú pháp sử dụng phương thức
Trong đó:
VD: Trong ví dụ sau mình sẽ thử truy vấn document có category = 'Foo'.
Và đây là kết quả trả về:
Như các bạn đã thấy thì mặc dù trong database (database demo ở trên) có 2 document có category là "Foo" nhưng khi chúng ta sử dụng Và nếu muốn lấy giá trị của document thì chỉ
cần trỏ $result đến các key trong database là được (ORM mapping).
2, find().Phương thức này cũng tương tự như phương thức VD: Cũng với câu query ở phần 1 nhưng giờ mình sẽ sử dụng phương thức
Và đây là kết quả trả về:
Như các bạn đã thấy thì nó trả về một loạt các thông tin, nhưng lại không thấy
kết quả trả về là gì? Để lấy kết quả trả về các bạn chỉ cần vứt object
Hoặc bạn cũng có thể gọi phương thức VD:
Kết quả trả về.
3, Các ví dụ khác.Về phần $filter chứa các tham số điều kiện gì thì các bạn có thể tham khảo bài viết này nó hoàn toàn giống như thế. VD: Lấy ra title của các document có category = 'Foo'.
VD: Tìm kiếm document có tile chứa số 2.
VD: Lấy ra 2 bản ghi trong collection.
VD: Lấy ra 2 bản ghi bắt đầu từ bản ghi thứ nhất.
,... 4, Kết.Bài này mình chỉ demo một phần nhỏ các case query trong MongoDB thôi, để xem thêm các bạn có thể tham khảo bài này hoặc lên docs của MongoDB. |