enyoslutions/doctrine-orm-service-provider

Silex DoctrineORM 服务提供者

1.0.1 2014-10-21 20:32 UTC

This package is not auto-updated.

Last update: 2024-09-24 02:16:47 UTC


README

此库为您提供了一个 Silex DoctrineORM 服务提供者。

此服务提供者需要 PHP 5.3+、Silex 和 DoctrineORM。

DoctrineORM 已包含在 composer.json 中。

参数

  • orm.entities_path:实体路径。
  • orm.proxies_path:代理路径。
  • orm.proxies_namespace:代理命名空间。
  • orm.connection_parameters:Doctrine DBAL 连接参数数组。有关 DBAL 配置的说明,请参阅 DBAL 配置
  • orm.metadata_cache:可选。此参数设置用于缓存元数据信息的缓存实现。默认值为 Doctrine\Common\Cache\ArrayCache。请不要在生产环境中使用它。
  • orm.query_cache:可选。此参数设置用于缓存 DQL 查询的缓存实现。默认值为 Doctrine\Common\Cache\ArrayCache。请不要在生产环境中使用它。
  • orm.result_cache:可选。此参数设置用于缓存查询结果信息的缓存实现。
  • orm.autogenerate_proxy_classes:设置 Doctrine 是否应在运行时自动生成代理类。如果设置为 FALSE,则必须通过 doctrine 命令行任务 generate-proxies 手动生成代理类。对于生产环境,强烈推荐设置为 FALSE。默认值为 TRUE。

注册

<?php
...

$app->register(new Palma\Silex\Provider\DoctrineORMServiceProvider(), array(
    'orm.entities_path'     => __DIR__.'/Entities/',
    'orm.proxies_path'      => __DIR__.'/Proxies',
    'orm.proxies_namespace' => 'MyProject\Proxies',
    'orm.connection_parameters' => array(
    			'driver'        => 'pdo_mysql',
                'dbname'        => 'dbname',
                'user'          => 'usename',
                'password'      => '******',
                'host'          => 'localhost',
                'charset'       => 'utf8',
    		)
));

用法

<?php

$app->get('/blog/show/{id}', function ($id) use ($app) {
    
    $post = $['orm.em']->find('Post', $id);
	
	return  "<h1>{$post->getTitle()}</h1>".
            "<p>{$post->getBody()}</p>";
});

Total Downloads