rey/orm

Rey Bitrix ORM

v0.4.0 2014-06-23 14:49 UTC

This package is not auto-updated.

Last update: 2024-09-24 07:30:27 UTC


README

什么是 ReyOrm?

Bitrix 的实验性 ORM。

Build Status

安装

通过 composer

$ php composer.phar require rey/orm dev-master

在你的代码中添加

require_once __DIR__ . '/vendor/autoload.php';

示例

ReyOrm(alfa 版本)工作示例

新闻的代码类仓库

use Rey\Orm\Repository\BaseRepository;
use CIBlockElement;

class NewsRepository extends BaseRepository
{
    public function getAllNews()
    {
        $r = CIBlockElement::getList(array(), array('IBLOCK_ID' => $this->getMetadata()->get('iblock_id')));

        return $r;
    }
}

用户仓库可以在类中结构化业务逻辑。

$config = new Rey\Orm\Configuration();

$config->setCacheDir(__DIR__ . '/cache/orm');
$config->setRepositoryClass('News', 'NewsRepository');

$em = new Rey\Orm\EntityManager($config);

$newsRepository = $em->getRepository('News');
$newsList = $newsRepository->getAllNews();

while($newsItem = $newsList->Fetch()) {
    echo $newsItem['Title'] . '</ br>';
}

当调用 $em->getRepository('News') 时,将搜索信息块代码 News。如果没有为 News 实体设置用户仓库,则返回 Rey\Orm\Repository\BaseRepository 实例。

运行测试

你可以使用以下命令运行单元测试

$ cd path/to/rey/orm/
$ composer.phar install
$ phpunit