当前位置: 首页>>代码示例>>PHP>>正文


PHP AbstractPlatform::setEventManager方法代码示例

本文整理汇总了PHP中Doctrine\DBAL\Platforms\AbstractPlatform::setEventManager方法的典型用法代码示例。如果您正苦于以下问题:PHP AbstractPlatform::setEventManager方法的具体用法?PHP AbstractPlatform::setEventManager怎么用?PHP AbstractPlatform::setEventManager使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Doctrine\DBAL\Platforms\AbstractPlatform的用法示例。


在下文中一共展示了AbstractPlatform::setEventManager方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: testGetAlterTableSqlDispatchEvent

 public function testGetAlterTableSqlDispatchEvent()
 {
     $events = array('onSchemaAlterTable', 'onSchemaAlterTableAddColumn', 'onSchemaAlterTableRemoveColumn', 'onSchemaAlterTableChangeColumn', 'onSchemaAlterTableRenameColumn');
     $listenerMock = $this->getMock('GetAlterTableSqlDispatchEvenListener', $events);
     $listenerMock->expects($this->once())->method('onSchemaAlterTable');
     $listenerMock->expects($this->once())->method('onSchemaAlterTableAddColumn');
     $listenerMock->expects($this->once())->method('onSchemaAlterTableRemoveColumn');
     $listenerMock->expects($this->once())->method('onSchemaAlterTableChangeColumn');
     $listenerMock->expects($this->once())->method('onSchemaAlterTableRenameColumn');
     $eventManager = new EventManager();
     $events = array(Events::onSchemaAlterTable, Events::onSchemaAlterTableAddColumn, Events::onSchemaAlterTableRemoveColumn, Events::onSchemaAlterTableChangeColumn, Events::onSchemaAlterTableRenameColumn);
     $eventManager->addEventListener($events, $listenerMock);
     $this->_platform->setEventManager($eventManager);
     $table = new Table('mytable');
     $table->addColumn('removed', 'integer');
     $table->addColumn('changed', 'integer');
     $table->addColumn('renamed', 'integer');
     $tableDiff = new TableDiff('mytable');
     $tableDiff->fromTable = $table;
     $tableDiff->addedColumns['added'] = new \Doctrine\DBAL\Schema\Column('added', \Doctrine\DBAL\Types\Type::getType('integer'), array());
     $tableDiff->removedColumns['removed'] = new \Doctrine\DBAL\Schema\Column('removed', \Doctrine\DBAL\Types\Type::getType('integer'), array());
     $tableDiff->changedColumns['changed'] = new \Doctrine\DBAL\Schema\ColumnDiff('changed', new \Doctrine\DBAL\Schema\Column('changed2', \Doctrine\DBAL\Types\Type::getType('string'), array()), array());
     $tableDiff->renamedColumns['renamed'] = new \Doctrine\DBAL\Schema\Column('renamed2', \Doctrine\DBAL\Types\Type::getType('integer'), array());
     $this->_platform->getAlterTableSQL($tableDiff);
 }
开发者ID:pnaq57,项目名称:zf2demo,代码行数:25,代码来源:AbstractPlatformTestCase.php

示例2: __construct

 /**
  * Initializes a new instance of the Connection class.
  *
  * @param array                              $params       The connection parameters.
  * @param \Doctrine\DBAL\Driver              $driver       The driver to use.
  * @param \Doctrine\DBAL\Configuration|null  $config       The configuration, optional.
  * @param \Doctrine\Common\EventManager|null $eventManager The event manager, optional.
  *
  * @throws \Doctrine\DBAL\DBALException
  */
 public function __construct(array $params, Driver $driver, Configuration $config = null, EventManager $eventManager = null)
 {
     $this->_driver = $driver;
     $this->_params = $params;
     if (isset($params['pdo'])) {
         $this->_conn = $params['pdo'];
         $this->_isConnected = true;
     }
     // Create default config and event manager if none given
     if (!$config) {
         $config = new Configuration();
     }
     if (!$eventManager) {
         $eventManager = new EventManager();
     }
     $this->_config = $config;
     $this->_eventManager = $eventManager;
     $this->_expr = new Query\Expression\ExpressionBuilder($this);
     if (!isset($params['platform'])) {
         $this->_platform = $driver->getDatabasePlatform();
     } else {
         if ($params['platform'] instanceof Platforms\AbstractPlatform) {
             $this->_platform = $params['platform'];
         } else {
             throw DBALException::invalidPlatformSpecified();
         }
     }
     $this->_platform->setEventManager($eventManager);
     $this->_transactionIsolationLevel = $this->_platform->getDefaultTransactionIsolationLevel();
 }
开发者ID:kalaspuffar,项目名称:php-orm-benchmark,代码行数:40,代码来源:Connection.php

示例3: detectDatabasePlatform

 /**
  * Detects and sets the database platform.
  *
  * Evaluates custom platform class and version in order to set the correct platform.
  *
  * @throws DBALException if an invalid platform was specified for this connection.
  */
 private function detectDatabasePlatform()
 {
     if (!isset($this->_params['platform'])) {
         $version = $this->getDatabasePlatformVersion();
         if (null !== $version) {
             $this->platform = $this->_driver->createDatabasePlatformForVersion($version);
         } else {
             $this->platform = $this->_driver->getDatabasePlatform();
         }
     } elseif ($this->_params['platform'] instanceof Platforms\AbstractPlatform) {
         $this->platform = $this->_params['platform'];
     } else {
         throw DBALException::invalidPlatformSpecified();
     }
     $this->platform->setEventManager($this->_eventManager);
 }
开发者ID:TheTypoMaster,项目名称:SPHERE-Framework,代码行数:23,代码来源:Connection.php


注:本文中的Doctrine\DBAL\Platforms\AbstractPlatform::setEventManager方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。