Pada tutorial tentang MongoDB dan PHP yang ditulis sebelumnya
Instalasi dan Konfigirasi https://indratoshare.web.id/2017/12/mongodb-dan-php-instalasi-dan-konfigurasi/
Operasi Dasar MongoDB https://indratoshare.web.id/2017/12/mongodb-dan-php-operasi-dasar-mongodb/

Selanjutnya akan diuraikan lebih detail tentang implementasi pemrograman dengan menggunakan platform PHP dan MongoDB, contoh pertama adalah bagaimana cara melakukan koneksi ke database kampus dan mendapatkan statistiknya.

MongoDB\Driver\Manager bertanggungjawab untuk memelihara koneksi ke MongoDB
MongoDB\Driver\Command merepresentasikan sebuah perintah database

dbstats.php

Dengan class MongoDB\Driver\Manager, kita terhubung dengan MongoDB melalui host localhost port default yang digunakan oleh MongoDB yaitu post 27017

Mongo\Driver\Command digunakan untuk mengeksekusi perintah dbstats

Fungsi toArray() mengembalikan array yang berisi semua hasil dan lalu dicetak melalui fungsi print_r($stats);

Hasilnya seperti dibawah ini:

Melihat Daftar Database

Perintah listDatabase adalah perintah MongoDB yang menyediakan satu daftar dari semua database yang ada di MongoDB

list_database.php

Kita mengeksekusi perintah listDatabase, perintah ini dieksekusi oleh database master dari MongoDB yaitu database admin

Perintah diatas mengembalikan hasil dokumen tunggal, yang berisi informasi untuk semua database yang ada pada array databases.

Skrip di atas berfungsi untuk menampilkan daftar database yang ada di MongoDB. Hasilnya seperti berikut:

Dalam mesin lokal, kita hanya mempunyai dua database saja, yaitu database kampus dan database local.

Membaca Data/Seleksi Data
MongoDB\Driver\Query dalah sebuah nilai obyek yang merepresentasikan sebuah query database. Jika diasosiasikan dengan database relasional, class ini bertanggung jawab untuk mengeksekusi perintah-perintah SQL seperti select.

read_all.php

Contoh diatas adalah untuk membaca semua data yang berada pada collection mahasiswa

Sebuah obyek baru dari MongoDB\Driver\Query terbentuk, jika kita melewatkan sebuah array kosong, maka artinya kita akan melakukan seleksi semua data (select *)

Fungsi executeQuery() bertanggung jawab untuk mengeksekusi query, dimana parameter pertama adalah menunjuk ke collection mahasiswa dari database kampus (kampus.mahasiswa) dan parameter kedua adalah query.

Skrip diatas berfungsi untuk menampilkan data dengan menggunakan metode iterasi foreach, hasilnya adalah sebagai berikut:

Filtering Data
Class MongoDB\Driver\Query dapat berisi parameter filter yang digunakan untuk melakukan penyaringan data, jika di database relasional asosiasinya adalah WHERE.

filtering.php

Skrip diatas akan melakukan pencarian data mahasiswa berdasarkan kolom nama

Setelah query dengan filter tereksekusi, tampilkan dengan skrip diatas, dan pastikan terdapat handler jika data yang dicari adalah kosong alias tidak ditemukan. Dan hasilnya:

Projections
Projections dapat digunakan untuk field tertentu sebagai nilai balik

projection.php

Contoh di atas, kita menyembunyikan field pertama yaitu _id

Projections dikhususkan pada sebuah array projection. Disini kita menyembunyikan field _id.

Projections dilewatkan pada argumen kedua dari kelas MongoDB\Driver\Query, dan hasilnya:

Membatasi Data Keluaran
Perintah ini akan berasosiasi dengan ORDER BY … LIMIT dalam database relasional

read_limit.php

$query = new MongoDB\Driver\Query([], [‘sort’ => [‘name’ => 1], ‘limit’=>3]);
Perintah diatas maksudnya adalah menampilkan data mahasiswa dengan urut berdasarkan nama secara terurut membesar (ascendent) dan hanya dibatasi sebanyak 3 data/baris saja.

Bulk Write
Metode MongoDB\Driver\Manager::executeBulkWrite mengeksekusi satu atau lebih operasi penulisan termasuk insert, update dan delete data.

bulkwrite.php

Perintah untuk melakukan insert data. New MongoDB\BSON\ObjectID digunakan untuk melakukan generate ID pada kolom _id.

Perintah untuk melakukan update data pada kolom jurusan menjadi “Teknik Informatika2” berdasarkan (where) nama=’Nur Hayati”

Perintah untuk melakukan delete data berdasarkan kriteria (where) nama=’Paijo’

Perintah untuk mengeksekusi query bulk write yang ditulis sebelumnya.