vendor/davedevelopment/phpmig/src/Phpmig/Adapter/Mongo.php

(开头部分) 1KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

<?php

namespace Phpmig\Adapter;

use Phpmig\Migration\Migration,
    Phpmig\Adapter\AdapterInterface;

/**
 * @author Samuel Laulhau https://github.com/lalop
 */

class Mongo implements AdapterInterface
{

    /**
     * @var \MongoDb
     */
    protected $connection    = null;

    /**
     * @var string
     */
    protected $tableName     = null;

    /**
     * Constructor
     *
     * @param \MongoDb $connection
     * @param string $tableName
     */
    public function __construct(\MongoDb $connection, $tableName)
    {
        $this->connection    = $connection;
        $this->tableName     = $tableName;
    }

    /**
     * Fetch all
     *
     * @return array
     */
    public function fetchAll()
    {
        $cursor = $this->connection->selectCollection($this->tableName)->find();
        $versions = array();
        foreach($cursor as $version) $versions[] = $version['version'];
        return $versions;
    }

    /**
     * Up
     *
     * @param Migration $migration
     * @return self
     */
    public function up(Migration $migration)
    {
        $document = array('version' => $migration->getVersion());
        $this->connection->selectCollection($this->tableName)->insert($document);

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。