Rumah >pembangunan bahagian belakang >tutorial php >Membina aplikasi blog mudah dengan MongoDB dan PHP
Sambung ke pangkalan data MongoDB
Apa itu mongodb
Menurut laman web rasmi MongoDB adalah pangkalan data dokumen yang menyediakan prestasi tinggi, ketersediaan tinggi, dan skalabilitas yang mudah. MongoDB jatuh ke dalam kumpulan pangkalan data NoSQL yang berorientasikan dokumen. Untuk subtipe lain pangkalan data NoSQL, lihat di sini.
Koleksi: Koleksi adalah bersamaan dengan jadual RDBMS. Koleksi wujud dalam satu pangkalan data. Koleksi tidak menguatkuasakan skema. Dokumen dalam koleksi boleh mempunyai bidang yang berbeza. Biasanya, semua dokumen dalam koleksi mempunyai tujuan yang sama atau berkaitan.
Dokumen: Rekod dalam koleksi MongoDB dan unit asas data dalam MongoDB. Dokumen adalah sama dengan objek JSON tetapi wujud dalam pangkalan data dalam format yang lebih kaya jenis yang dikenali sebagai BSON. Dokumen mengandungi satu set medan atau pasangan nilai utama. Cara terbaik untuk memikirkan dokumen adalah sebagai pelbagai multidimensi. Dalam array, anda mempunyai satu set kunci yang memetakan kepada nilai (dokumen == array). Lihat dokumen.
Ini adalah bagaimana Mongo dipasang di Ubuntu Linux. Terbuka Terminal dan laksanakan yang berikut:
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10 # echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' | sudo tee /etc/apt/sources.list.d/mongodb.listsekarang mengeluarkan arahan berikut untuk mengemas kini repositori anda dan memasang versi stabil terbaru MongoDB:
sudo apt-get update sudo apt-get install mongodb-10genSelesai, anda telah berjaya memasang MongoDB. Sekarang mulakan dan hentikan perkhidmatan MongoDB melalui baris arahan di bawah.
sudo service mongodb start sudo service mongodb stopSekiranya kesilapan mula cuba jalankan perintah berikut:
sudo mongod --fork --logpath /var/log/mongodb/mongodb.log #or sudo mongod -f /etc/mongodb.confBerikut ini menerangkan cara memasangnya pada Windows:
pergi ke halaman muat turun di laman web rasmi MongoDB. Klik pada pautan muat turun untuk pelepasan stabil terkini di bawah Windows.
Selepas muat turun selesai, ekstrak dan gerakkannya ke C :. MongoDB memerlukan folder data untuk menyimpan failnya. Lokasi lalai untuk direktori data MongoDB ialah C: DATADB. Jika ia tidak wujud, buatnya.
untuk memulakan mongoDB, laksanakan dari command prompt
C:\> cd \mongodb\bin C:\mongodb\bin> mongodSelesai, anda telah berjaya memasang MongoDB. Sekarang mulakan dan hentikan perkhidmatan MongoDB melalui baris arahan di bawah.
net start MongoDB net stop MongoDBmemasang pemacu php untuk mongodb
Jika anda menggunakan Linux Pasang dengan mudah melalui:
sudo pecl install mongoTambah lanjutan baris = mongo.so ke konfigurasi php.ini anda dan anda baik untuk pergi:
sudo -i echo 'extension=mongo.so' >> /etc/php5/apache2/php.iniMulakan semula pelayan web anda dan sahkan melalui baris arahan:
php -i |grep "mongo" php --re mongoMemasang pemacu pada Windows
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10 # echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' | sudo tee /etc/apt/sources.list.d/mongodb.listmenyambung ke hos jauh dengan port tersuai pilihan dan auth:
sudo apt-get update sudo apt-get install mongodb-10genMemilih pangkalan data
sudo service mongodb start sudo service mongodb stopAsas (Operasi CRUD)
Membuat/memilih koleksi
sudo mongod --fork --logpath /var/log/mongodb/mongodb.log #or sudo mongod -f /etc/mongodb.confSebagai contoh, ini mewujudkan koleksi "Posts" di blog saya:
C:\> cd \mongodb\bin C:\mongodb\bin> mongodMembuat dokumen
net start MongoDB net stop MongoDBKaedah memasukkan () menyimpan data dalam koleksi. Arahan pos $ secara automatik menerima medan bernama _ID, yang merupakan objek unik autogenerated dokumen BSON yang dimasukkan. Anda juga boleh menggunakan kaedah SAVE (), yang upserts - mengemas kini rekod sedia ada, atau mencipta yang baru jika tidak wujud.
Membaca dokumen
sudo pecl install mongoMengemas kini dokumen
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10 # echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' | sudo tee /etc/apt/sources.list.d/mongodb.list
Kaedah kemas kini () mengambil dua parameter. Yang pertama adalah kriteria untuk menggambarkan objek untuk mengemaskini dan yang kedua objek yang untuk mengemas kini rekod yang sepadan. Terdapat juga parameter pilihan ketiga di mana anda boleh lulus dalam pelbagai pilihan.
Struktur projek yang akan kita bina:
sudo apt-get update sudo apt-get install mongodb-10gen
sebelum kita mulakan dengan kod PHP sebenar kita, kita perlu membuat fail dan folder kita seperti di atas.
Ini adalah fail konfigurasi anda yang memberitahu aplikasi kami bagaimana untuk menyambung ke pangkalan data. Di sinilah anda telah menentukan nama pangkalan data, nama pengguna dan kata laluan pengguna untuk mengakses pangkalan data tersebut:
sudo service mongodb start sudo service mongodb stop
di mana kita menentukan paramaters userauth dan passwordauth untuk melindungi folder admin melalui pengesahan HTTP. Kami menggunakan HTTP Auth untuk kesederhanaan di sini, melihat sebagai tema utama artikel ini menyambung ke MongoDB - anda biasanya akan menggunakan beberapa jenis rangka kerja yang baik dengan ACL untuk membina kawalan akses.
app.php:
sudo mongod --fork --logpath /var/log/mongodb/mongodb.log #or sudo mongod -f /etc/mongodb.confadmin
C:\> cd \mongodb\bin C:\mongodb\bin> mongoduntuk fail penuh index.php lihat di sini. Di atas saya menggunakan fungsi paparan dalam susun atur kelas.php yang secara automatik akan memuat papan dashboard.view.php.
net start MongoDB net stop MongoDBStatus parameter GET sepadan dengan tindakan CRUD. Sebagai contoh, apabila status "membuat":
sudo pecl install mongoPaparan Fungsi ('Admin/Create', $ Data) menunjukkan bentuk HTML di mana pengguna boleh menulis tajuk/kandungan pos blog baru, atau ia menjimatkan data yang dikemukakan pengguna ke MongoDB. Secara lalai skrip memaparkan borang HTML berikut:
sudo -i echo 'extension=mongo.so' >> /etc/php5/apache2/php.ini
Seterusnya mari kita lihat db.php, yang boleh didapati sepenuhnya di sini
kursor MongoDB menjadikan penomboran mudah. Kaedah kursor ini boleh dirantai dari objek kursor yang mencari pulangan dan satu sama lain. Menggabungkan had dengan Skip menjadikan penomboran mudah. Ini juga boleh digabungkan dengan perintah. Contohnya.
php -i |grep "mongo" php --re mongo
index.php: Fail templat boleh didapati dalam folder paparan; seperti index.view.php. Berikut adalah contoh index.php:
$connection = new Mongo();
Buka penyemak imbas anda dan navigasi ke http://duythien.dev/sitePoint/blog-mongodb. Ia menyenaraikan semua artikel semasa di blog:
$connecting_string = sprintf('mongodb://%s:%d/%s', $hosts, $port,$database), $connection= new Mongo($connecting_string,array('username'=>$username,'password'=>$password));
tunggal.php: Apabila anda melihat halaman pos tunggal (klik Baca lebih lanjut pada siaran), anda melihat single.view.php dalam folder paparan. Berikut adalah logik tunggal.php:
Fail ini menerima _id artikel sebagai parameter HTTP GET. Kami memanggil kaedah FindOne () pada koleksi artikel, menghantar nilai _id sebagai parameter kepada kaedah. Kaedah FindOne () digunakan untuk mendapatkan dokumen tunggal. Lihat fungsi getById () dalam fail db.php
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10 # echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' | sudo tee /etc/apt/sources.list.d/mongodb.listKomen untuk artikel disimpan dalam medan array komen nama dokumen. Setiap elemen komen adalah dokumen tertanam yang mengandungi beberapa bidang.
Kesimpulan
Untuk maklumat lanjut mengenai MongoDB, lihat dokumentasi dalam talian. Adakah anda menikmati artikel ini? Marilah kita tahu fikiran anda!
Soalan Lazim (Soalan Lazim) Mengenai Membina Aplikasi Blog Mudah Dengan MongoDB dan PHP
Apakah prasyarat untuk membina aplikasi blog dengan MongoDB dan PHP? MongoDB dan PHP, anda perlu mempunyai pemahaman asas mengenai PHP dan MongoDB. Anda juga perlu memasang PHP dan MongoDB pada sistem anda. Di samping itu, anda memerlukan editor teks untuk menulis kod anda dan pelayan web untuk menganjurkan aplikasi anda. ditangani menggunakan sesi dalam PHP. Apabila pengguna log masuk, sesi dimulakan, dan maklumat pengguna disimpan dalam pembolehubah sesi. Pembolehubah ini boleh diakses sepanjang sesi pengguna, yang membolehkan anda menyekat akses ke halaman tertentu berdasarkan status pengesahan pengguna.
Operasi CRUD (membuat, membaca, mengemas kini, memadam) boleh dilaksanakan dalam aplikasi blog menggunakan PHP dan MongoDB. PHP menyediakan fungsi untuk berinteraksi dengan MongoDB, yang membolehkan anda membuat dokumen (jawatan), membaca dokumen, mengemas kini dokumen, dan memadam dokumen. Pemandu PHP MongoDB menyediakan API yang mudah untuk operasi ini. fungsi. Fungsi ini membolehkan anda menentukan peraturan pengendalian ralat tersuai, membuat pengendali ralat tersuai, dan melaporkan kesilapan. Anda juga boleh log kesilapan untuk tujuan debug.
Bagaimana saya boleh menggunakan aplikasi blog saya? Fail dan pangkalan data MongoDB ke pelayan web. Anda boleh menggunakan FTP atau sistem kawalan versi seperti Git untuk memuat naik fail. Anda juga perlu mengkonfigurasi pelayan web anda untuk mengendalikan skrip PHP dan menyambung ke pangkalan data MongoDB anda. Boleh ditambah ke aplikasi blog dengan membuat koleksi tambahan dalam pangkalan data MongoDB anda untuk menyimpan komen dan suka. Anda kemudian boleh menggunakan PHP untuk membuat, membaca, mengemas kini, dan memadam komen dan suka, dan mengaitkannya dengan jawatan tertentu.
Atas ialah kandungan terperinci Membina aplikasi blog mudah dengan MongoDB dan PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!