English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

PHP في MongoDB

要将MongoDB与PHP一起使用,您需要使用MongoDB PHP驱动程序。从url下载PHP驱动程序中下载驱动程序。确保下载最新版本。现在解压缩存档,并将php_mongo.dll放入您的PHP扩展目录(默认为“ext”),并将以下行添加到您的php.ini文件中-

extension = php_mongo.dll

建立连接并选择数据库

要建立连接,您需要指定数据库名称,如果该数据库不存在,则MongoDB会自动创建它。

以下是连接到数据库的代码片段-

<?php
   // الاتصال بـmongodb
   $m = new MongoClient();
   echo "تم الاتصال بالقاعدة البيانات بنجاح";
   // اختيار قاعدة بيانات
   $db = $m->mydb;
   echo "اختيار قاعدة البيانات mydb";
?>

عند تنفيذ البرنامج، سيتم توليد النتائج التالية -

连接数据库成功,数据库mydb被选中

创建集合

以下是创建集合的代码片段-

<?php
   // الاتصال بـmongodb
   $m = new MongoClient();
   echo "تم الاتصال بالقاعدة البيانات بنجاح";
   // اختيار قاعدة بيانات
   $db = $m->mydb;
   echo "Database mydb selected";
   $collection = $db->createCollection("mycol");
   echo "集合创建成功";
?>

عند تنفيذ البرنامج، سيتم توليد النتائج التالية -

已成功连接到数据库 集合创建成功

插入文档

要将文档插入MongoDB,请使用insert()الطريقة.

以下是插入文档的代码片段-

<?php
   // الاتصال بـmongodb
   $m = new MongoClient();
   echo "تم الاتصال بالقاعدة البيانات بنجاح";
   // اختيار قاعدة بيانات
   $db = $m->mydb;
   echo "تم اختيار قاعدة البيانات mydb";
   $collection = $db->mycol;
   echo "تم اختيار المجموعة بنجاح";
   $document = array( 
      "title" => "MongoDB", 
      "description" => "database", 
      "likes" => 100,
      "url" => "http://ar.oldtoolbag.com/mongodb/"
      "by" => "oldtoolbag.com"
   );
   $collection->insert($document);
   echo "تم إدراج المستند بنجاح";
?>

عند تنفيذ البرنامج، سيتم توليد النتائج التالية -

تم الاتصال بالقاعدة البيانات  تم اختيار قاعدة البيانات mydb تم اختيار المجموعة بنجاح المستندات تم إدراجها بنجاح

البحث عن جميع المستندات

لاختيار جميع المستندات من المجموعة، استخدمfind()الطريقة.

هذا هو جزء من كود اختيار جميع المستندات

<?php
   // الاتصال بـmongodb
   $m = new MongoClient();
   echo "تم الاتصال بالقاعدة البيانات بنجاح";
   // اختيار قاعدة بيانات
   $db = $m->mydb;
   echo "تم اختيار قاعدة البيانات mydb";
   $collection = $db->mycol;
   echo "تم اختيار المجموعة بنجاح";
   $cursor = $collection->find();
   // تدوير المؤشر لعرض عنوان المستند
   foreach ($cursor as $document) {
      echo $document["title"] . \
   }
?>

عند تنفيذ البرنامج، سيتم توليد النتائج التالية -

تم الاتصال بالقاعدة البيانات
تم اختيار قاعدة البيانات mydb
تم اختيار المجموعة بنجاح {"title": "MongoDB"}

تحديث المستند

لتحديث المستند، تحتاج إلى استخدام update()الطريقة.

في المثال التالي، سنقوم بتحديث عنوان المستند إلىMongoDB Tutorialهذا هو جزء من كود تحديث المستندات

<?php
   // الاتصال بـmongodb
   $m = new MongoClient();
   echo "تم الاتصال بالقاعدة البيانات بنجاح";
   // اختيار قاعدة بيانات
   $db = $m->mydb;
   echo "اختيار قاعدة البيانات mydb";
   $collection = $db->mycol;
   echo "تم اختيار المجموعة بنجاح";
   // الآن تحديث المستند
   $collection->update(array("title"=>"MongoDB"), 
      array('$set'=>array("title"=>"MongoDB Tutorial")));
   echo "تم تحديث المستند بنجاح";
   // الآن عرض المستند المعدل
   $cursor = $collection->find();
   // تدوير المؤشر لعرض عنوان المستند
   echo "Updated document";
   foreach ($cursor as $document) {
      echo $document["title"] . \
   }
?>

عند تنفيذ البرنامج، سيتم توليد النتائج التالية -

تم الاتصال بالقاعدة البيانات  اختيار قاعدة البيانات mydb تم اختيار المجموعة بنجاح المستندات تم تحديثها بنجاح {
   "title": "MongoDB Tutorial"

إزالة المستند

لإزالة المستند، تحتاج إلى استخدام remove()الطريقة.

في المثال التالي، سنزيل المستند الذي يحتوي على عنوانMongoDB Tutorialهذا هو جزء من كود إزالة المستندات

<?php
   // الاتصال بـmongodb
   $m = new MongoClient();
   echo "تم الاتصال بالقاعدة البيانات بنجاح";
   // اختيار قاعدة بيانات
   $db = $m->mydb;
   echo "تم اختيار قاعدة البيانات mydb";
   $collection = $db->mycol;
   echo "تم اختيار المجموعة بنجاح";
   
   // الآن إزالة المستند
   $collection->remove(array("title"=>"MongoDB Tutorial"),false);
   echo "تم حذف المستند بنجاح";
   
   // الآن عرض المستندات المتاحة
   $cursor = $collection->find();
   // تدوير المؤشر لعرض عنوان المستند
   echo "Updated document";
   foreach ($cursor as $document) {
      echo $document["title"] . \
   }
?>

عند تنفيذ البرنامج، سيتم توليد النتائج التالية -

نجحت في الاتصال بقاعدة البيانات - تم اختيار قاعدة البيانات mydb - تم اختيار مجموعة البيانات بنجاح - تم حذف المستند بنجاح

في المثال السابق، الثانية هي نوع boolean، تستخدم في حقل justOne في الطريقة remove().

أصول الطريقة واحدة في MongoDB مثل التي تم شرحها أعلاه.