tuscanicz / doctrine-enum-oracle
Oracle中的枚举数据类型的Doctrine类型。
1.0.2
2017-06-22 15:17 UTC
Requires
- php: >=5.5.0
- doctrine/orm: ~2.5
- tuscanicz/enum: ~2.0.2
Requires (Dev)
- phpunit/phpunit: ~4.0
README
一个抽象类,定义了Oracle中枚举数据类型的新Doctrine类型。
依赖于 tuscanicz/enum
和 Doctrine 2 doctrine/orm
。
如何使用
使用 tuscanicz/enum
准备一个新的枚举
<?php namespace MyApp\Enum; use Enum\AbstractEnum; class MyExampleEnum extends AbstractEnum { const MY_EXAMPLE_ENUM_FIRST = 'first'; const MY_EXAMPLE_ENUM_SECOND = 'second'; const MY_EXAMPLE_ENUM_THIRD = 'third'; }
在 MyApp\Component\Doctrine\Type
命名空间中创建一个新的类型 MyExampleType
并继承 AbstractEnumType
<?php namespace MyApp\Component\Doctrine\Type; use Doctrine\DBAL\Platforms\AbstractPlatform; use DoctrineEnumOracle\AbstractEnumType; use MyApp\Enum\MyExampleEnum; class MyExampleType extends AbstractEnumType { public function getEnumClassName() { return MyExampleEnum::class; } }
如何在Symfony中使用它
配置新的类型(config.yml)
doctrine:
dbal:
types:
MyExampleType: 'MyApp\Component\Doctrine\Type\MyExampleType'
如何在Zend Framework中使用它
配置新的类型(config.php)
'doctrine' => [
'configuration' => [
'orm_default' => [
'types' => [
'my_example_type' => 'MyApp\Component\Doctrine\Type\MyExampleType',
]
...
]
...
]
...
]
就这样!
现在你可以尝试生成一个新的迁移或模式差异。