MongoDB - PHP: A Panduan untuk Pemula

Hai sana, para ahli basisdata masa depan! ? Saya sangat gembira untuk menjadi panduanmu dalam perjalanan menarik ke dunia MongoDB dan PHP. Sebagai seseorang yang telah mengajar ilmu komputer selama tahun tahun, saya telah melihat banyak siswa bercahaya saat mereka memahami konsep ini. Jadi, mari kita masuk dan buat sedikit sihir basisdata bersama!

MongoDB - PHP

Buat Koneksi dan Pilih Basisdata

Sebelum kita bisa melakukan hal-hal menarik, kita perlu menghubungkan ke server MongoDB kita dan memilih basisdata. Picturkan ini seperti mengnock pada pintu sebuah perpustakaan raksasa dan meminta izin untuk masuk.

Ini adalah cara kita melakukannya:

<?php
// Buat klien MongoDB baru
$client = new MongoDB\Client("mongodb://localhost:27017");

// Pilih basisdata
$database = $client->selectDatabase("myAwesomeDB");

echo "Berhasil terhubung ke basisdata!";
?>

mari kitauraikan ini:

  1. Kita buat klien MongoDB baru, memberitahunya dimana server MongoDB kita berada (dalam hal ini, dia di mesin lokal kita).
  2. Kita kemudian memilih basisdata bernama "myAwesomeDB". Jika basisdata itu belum ada, MongoDB akan membuatnya bagi kita. Apakah itu tidak menarik?

Tips pro: Selalu periksa apakah koneksi Anda berhasil. Dalam kasus dunia nyata, Anda ingin membungkus ini dalam blok try-catch untuk menangani kesalahan koneksi dengan mulus.

Buat Koleksi

Sekarang kita dalam basisdata kita, kita butuh tempat untuk menyimpan data kita. Dalam MongoDB, kita sebut tempat ini "koleksi". Picturkan koleksi seperti sebuah lemari di dalam kabinet berkas.

Ini adalah cara kita membuatnya:

<?php
// Buat koleksi baru
$collection = $database->createCollection("myFirstCollection");

echo "Koleksi berhasil dibuat!";
?>

Mudah-mudahan, kan? Kita hanya memberitahu basisdata kita untuk membuat koleksi baru bernama "myFirstCollection". Jika koleksi itu sudah ada, MongoDB akan hanya mengembalikan koleksi yang sudah ada.

Masukkan Dokumen

Sekarang, mari kita masukkan sesuatu ke dalam koleksi baru kita! Dalam MongoDB, kita menyimpan data sebagai "dokumen". Dokumen ini hampir mirip dengan objek JSON yang Anda mungkin telah lihat sebelumnya.

Mari kita tambahkan dokumen tentang seekor kucing manis:

<?php
$document = [
"name" => "Whiskers",
"age" => 3,
"color" => "orange",
"likes" => ["tidur", "ikan", "penunjuk laser"]
];

$insertResult = $collection->insertOne($document);

echo "Dokumen dimasukkan dengan ID: " . $insertResult->getInsertedId();
?>

Ini adalah apa yang terjadi:

  1. Kita membuat array yang mewakili dokumen kita. Array ini memiliki berbagai bidang yang menjelaskan kucing kita.
  2. Kita menggunakan metode insertOne() untuk menambahkan dokumen ini ke dalam koleksi kita.
  3. MongoDB memberikan setiap dokumen ID unik, yang kita bisa dapatkan dengan getInsertedId().

Temukan Semua Dokumen

Sekarang kita memiliki beberapa data, mari kitaambilnya kembali. Kita akan menggunakan metode find() untuk mendapatkan semua dokumen dalam koleksi kita:

<?php
$cursor = $collection->find();

foreach ($cursor as $document) {
echo "Name: " . $document["name"] . ", Age: " . $document["age"] . "\n";
}
?>

Kode ini akan mencetak nama dan umur setiap kucing dalam koleksi kita. Metode find() mengembalikan kursor, yang kita bisa iterasikan untuk mengakses setiap dokumen.

Perbarui Dokumen

Ups! Kita baru saja menyadari Whiskers telah merayakan ulang tahunnya. Mari kita perbarui umurnya:

<?php
$updateResult = $collection->updateOne(
["name" => "Whiskers"],
['$set' => ["age" => 4]]
);

echo "Matched " . $updateResult->getMatchedCount() . " dokumen(s)\n";
echo "Modified " . $updateResult->getModifiedCount() . " dokumen(s)";
?>

Ini adalah apa yang terjadi:

  1. Kita menggunakan updateOne() untuk menemukan dokumen dimana nama adalah "Whiskers".
  2. Kita kemudian menggunakan operator $set untuk mengubah umurnya menjadi 4.
  3. Metode ini mengembalikan informasi tentang berapa banyak dokumen yang cocok dan diubah.

Hapus Dokumen

kadang-kadang, kita perlu menghapus data. Katakanlah Whiskers menemukan rumah baru (jangan khawatir, dia sangat bahagia di sana!). Kita dapat menghapus dokumennya seperti ini:

<?php
$deleteResult = $collection->deleteOne(["name" => "Whiskers"]);

echo "Deleted " . $deleteResult->getDeletedCount() . " dokumen(s)";
?>

Kode ini menemukan dokumen dimana nama adalah "Whiskers" dan menghapusnya. Metode getDeletedCount() memberitahu kita berapa banyak dokumen yang dihapus.

Metode MongoDB PHP

Berikut adalah tabel praktis dari metode MongoDB PHP yang kita telah pelajari:

Metode Deskripsi
new MongoDB\Client() Membuat klien MongoDB baru
selectDatabase() Memilih basisdata
createCollection() Membuat koleksi baru
insertOne() Menyisipkan dokumen tunggal
find() Mengambil dokumen dari koleksi
updateOne() Memperbarui dokumen tunggal
deleteOne() Menghapus dokumen tunggal

Dan itu saja! Anda baru saja belajar dasar-dasar bekerja dengan MongoDB menggunakan PHP. Ingat, latihan membuat sempurna, jadi jangan takut untuk mencoba metode ini. Cobalah membuat koleksi yang berbeda, menyisipkan berbagai jenis dokumen, dan bermain dengan permintaan yang lebih kompleks.

Dalam tahun-tahun mengajar saya, saya menemukan bahwa siswa yang memasuki dan merusak kode adalah orang yang benar-benar menguasai konsep ini. Jadi, maju saja, young padawan, dan may the database be with you! ??

Credits: Image by storyset