rcastera/mongo

v1.0.0 2013-09-29 17:25 UTC

This package is not auto-updated.

Last update: 2024-09-24 05:46:05 UTC


README

一个用于与MongoDB交互的简单类。对于MongoDB新手,应查看SQL到MongoDB映射图

设置

composer.json文件添加到您的项目中

{
  "require": {
      "rcastera/mongo": "v1.0.0"
  }
}

如果您已经安装了composer,则可以运行以下命令

$ composer.phar install

这将在您的vendor文件夹中检索库及其依赖项。然后您可以将以下内容添加到您的.php文件中,以便使用该库(如果您还没有的话)。

require 'vendor/autoload.php';

然后您需要使用相关的类,并实例化该类。例如

入门指南

require 'vendor/autoload.php';

use rcastera\Database\Mongo\Monga;

$mongo = new Monga();

示例

从联系人集合中查找所有文档。
<?php
    require 'vendor/autoload.php';
    use rcastera\Database\Mongo\Monga;

    $mongo = new Monga();
?>
<?php $cursor = $mongo->setDatabase('test')->setCollection('contacts')->getCollection()->find()->limit(10); ?>
<?php if ($cursor->hasNext()): ?>
<ul>
    <?php while ($cursor->hasNext()): ?>
    <?php $contact = $cursor->getNext(); ?>
    <li><?php echo $contact['name']; ?></li>
    <?php endwhile; ?>
</ul>
<?php else: ?>
<p>No contacts found.</p>
<?php endif; ?>
<?php unset($mongo); ?>
按名称升序查找所有文档并排序。
<?php
    require 'vendor/autoload.php';
    use rcastera\Database\Mongo\Monga;

    $mongo = new Monga();
?>
<?php $cursor = $mongo->setDatabase('test')->setCollection('contacts')->getCollection()->find()->sort(array('name' => 1)); ?>
<?php if ($cursor->hasNext()): ?>
<ul>
    <?php while ($cursor->hasNext()): ?>
    <?php $contact = $cursor->getNext(); ?>
    <li><?php echo $contact['name']; ?></li>
    <?php endwhile; ?>
</ul>
<?php else: ?>
<p>No contacts found.</p>
<?php endif; ?>
<?php unset($mongo); ?>
查找所有名称为 'Richard Castera' 的文档。
<?php
    require 'vendor/autoload.php';
    use rcastera\Database\Mongo\Monga;

    $mongo = new Monga();
?>
<?php $cursor = $mongo->setDatabase('test')->setCollection('contacts')->getCollection()->find(array('name' => 'Richard Castera')); ?>
<?php if ($cursor->hasNext()): ?>
<ul>
    <?php while ($cursor->hasNext()): ?>
    <?php $contact = $cursor->getNext(); ?>
    <li><?php echo $contact['name']; ?></li>
    <?php endwhile; ?>
</ul>
<?php else: ?>
<p>No contacts found.</p>
<?php endif; ?>
<?php unset($mongo); ?>
查找名称为 'Richard Castera' 并更新地址。
<?php
    require 'vendor/autoload.php';
    use rcastera\Database\Mongo\Monga;

    $mongo = new Monga();

    $criteria = array(
        'name' => 'Richard Castera'
    );
    $updates = array(
        '$set' => array(
            'address' => '2 Smith Lane'
        )
    );
    $options = array(
        'upsert' => false
    );
?>
<?php $updated = $mongo->setDatabase('test')->setCollection('contacts')->getCollection()->update($criteria, $updates, $options); ?>
<?php if ($updated): ?>
<p>Contact updated.</p>
<?php else: ?>
<p>Contact not updated.</p>
<?php endif; ?>
<?php unset($mongo); ?>
插入新文档。
<?php
    require 'vendor/autoload.php';
    use rcastera\Database\Mongo\Monga;

    $mongo = new Monga();

    $document = array(
        'name' => 'Isabella Castera',
        'age' => '3',
        'address' => '3 Smith Lane'
    );
?>
<?php $inserted = $mongo->setDatabase('test')->setCollection('contacts')->getCollection()->insert($document); ?>
<?php if ($inserted): ?>
<p>Contact inserted.</p>
<?php else: ?>
<p>Contact not inserted.</p>
<?php endif; ?>
<?php unset($mongo); ?>
删除文档。
<?php
    require 'vendor/autoload.php';
    use rcastera\Database\Mongo\Monga;

    $mongo = new Monga();

    $criteria = array(
        'name' => 'Elisabeth Castera'
    );

    $options = array(
        'justOne' => TRUE
    );
?>
<?php $deleted = $mongo->setDatabase('test')->setCollection('contacts')->getCollection()->delete($criteria, $options); ?>
<?php if ($deleted): ?>
<p>Contact deleted.</p>
<?php else: ?>
<p>Contact not deleted.</p>
<?php endif; ?>
<?php unset($mongo); ?>

贡献

  1. 分支它。
  2. 创建分支(git checkout -b my_branch
  3. 提交您的更改(git commit -am "Added something"
  4. 将更改推送到分支(git push origin my_branch
  5. 创建一个带有您分支链接的问题
  6. 享受一杯清新的可乐并等待