Dengan kemunculan era data besar, penyimpanan data dan pertanyaan telah menjadi salah satu masalah yang paling biasa dalam pembangunan. Pada masa lalu, banyak pembangun menggunakan pangkalan data hubungan seperti MySQL sebagai penyimpanan data dan penyelesaian pertanyaan Namun, apabila jumlah data terus berkembang, kecekapan dan prestasi pangkalan data hubungan ini tidak lagi dapat memenuhi permintaan. Akibatnya, pangkalan data NoSQL telah menjadi storan dan penyelesaian pertanyaan baharu yang popular. MongoDB ialah salah satu pangkalan data NoSQL yang paling biasa digunakan Ia menggunakan BSON (format data binari seperti JSON) untuk penyimpanan data dan mempunyai kelebihan kecekapan, kebolehskalaan dan kemudahan penggunaan. Di bawah, kami akan memperkenalkan cara menggunakan MongoDB untuk penyimpanan data dan pertanyaan dalam PHP.
1. Pasang sambungan MongoDB untuk MongoDB dan PHP
Pertama, kita perlu memasang MongoDB pada pelayan dan menambah sambungan MongoDB pada PHP. Langkah-langkah khusus adalah seperti berikut:
sudo apt-get install mongodb
sudo apt-get install php-mongodb
Selepas memasang MongoDB dan sambungan MongoDB untuk PHP, kami boleh mula menggunakan MongoDB untuk penyimpanan data dan pertanyaan dalam projek PHP. .
2. Sambung ke pangkalan data MongoDB
Sebelum menggunakan MongoDB untuk menyimpan data, kita perlu menyambung ke pangkalan data MongoDB terlebih dahulu. Anda boleh menggunakan kelas MongoClient untuk menyambung ke pangkalan data MongoDB. Kod khusus adalah seperti berikut:
$host = "localhost"; //Alamat hos
$port = 27017; //Nombor port
$database = "test";
$mongoClient = new MongoClient("mongodb://$host:$port");
$db = $mongoClient->$database;
Dalam kod di atas, kami lulus MongoClient () Sambung ke pangkalan data MongoDB dan nyatakan alamat hos yang disambungkan, nombor port dan nama pangkalan data. Selepas menyambung ke pangkalan data MongoDB, kami boleh menggunakan $db untuk melaksanakan operasi pangkalan data.
3. Gunakan MongoDB untuk penyimpanan data
Dalam MongoDB, kita boleh menggunakan kelas Koleksi untuk menyimpan data. Di bawah, kami akan memperkenalkan cara menggunakan kelas Koleksi untuk menyimpan data.
Anda boleh menggunakan kaedah sisipan() kelas Koleksi untuk memasukkan data. Kod khusus adalah seperti berikut:
$collection = $db->users; //Dapatkan koleksi pengguna
$user = array("name" => "user1", "age" => 18 , "email" => "user1@example.com");
$collection->insert($user);
Dalam kod di atas, kami mula-mula mendapatkan pengguna koleksi dalam MongoDB , dan kemudian data pengguna baharu dimasukkan. Data pengguna ialah tatasusunan yang mengandungi nama pengguna, umur dan alamat e-mel. Selepas memasukkan data, MongoDB secara automatik memberikan atribut _id kepada data sebagai pengecam unik untuk data ini.
Anda boleh menggunakan kaedah kemas kini() kelas Koleksi untuk mengemas kini data. Kod khusus adalah seperti berikut:
$collection = $db->users; //Dapatkan koleksi pengguna
$criteria = array("name" => "user1");
$newData = tatasusunan('$set' => tatasusunan("umur" => 20, "e-mel" => "pengguna2@contoh.com"));
$collection->kemas kini($ kriteria, $newData );
Dalam kod di atas, kami menggunakan kaedah kemas kini() untuk mengemas kini data, dengan tatasusunan $criteria mewakili syarat untuk mengemas kini data dan tatasusunan $newData mewakili yang baharu kandungan data. Dalam kod di atas, kami mengemas kini umur pengguna "user1" daripada 18 hingga 20 tahun dan alamat e-mel daripada "user1@example.com" kepada "user2@example.com".
Anda boleh menggunakan kaedah remove() kelas Koleksi untuk memadam data. Kod khusus adalah seperti berikut:
$collection = $db->users; //Dapatkan koleksi pengguna
$criteria = array("name" => "user1");
$collection- >remove($criteria);
Dalam kod di atas, kami menggunakan kaedah remove() untuk memadam data, dengan tatasusunan $criteria mewakili syarat untuk memadam data. Dalam kod di atas, kami telah memadamkan pengguna "user1".
4. Gunakan MongoDB untuk pertanyaan data
Dalam MongoDB, kita boleh menggunakan kaedah find() kelas Koleksi untuk pertanyaan data. Di bawah, kami akan memperkenalkan cara menggunakan kaedah find() kelas Koleksi untuk pertanyaan data.
Anda boleh menggunakan kaedah find() kelas Koleksi untuk mendapatkan semua data dalam pangkalan data. Kod khusus adalah seperti berikut:
$collection = $db->users //Dapatkan koleksi pengguna
$kursor = $collection->find(); 🎜>
$criteria = array("age" => array('$gt' = > 18) ); //Meminta pengguna yang berumur lebih daripada 18 tahun
$kursor = $collection->find($criteria);
Dalam kod di atas, kami menggunakan kaedah find() dan tatasusunan $criteria untuk menanyakan pengguna yang berumur lebih daripada 18 tahun. Tatasusunan $criteria menggunakan borang yang serupa dengan pernyataan SQL untuk mewakili keadaan pertanyaan. Dalam kod di atas, kami menggunakan pengendali "$gt" untuk menyoal pengguna yang berumur lebih daripada 18 tahun.
Anda boleh menggunakan kaedah find() kelas Koleksi dan tatasusunan $sort untuk mengisih hasil pertanyaan. Kod khusus adalah seperti berikut:
$collection = $db->users; //Dapatkan koleksi pengguna
$criteria = array("age" => array('$gt' = > 18) ); //Isih pengguna yang berumur lebih daripada 18 tahun
$sort = array("age" => -1); collection->find($criteria )->sort($sort);
Atas ialah kandungan terperinci Menggunakan MongoDB dalam PHP untuk penyimpanan data dan pertanyaan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!