PHP 클래스 Neos\Flow\Persistence\Doctrine\DataTypes\JsonArrayType

TODO: If doctrine supports a Postgres 9.4 platform we could default to jsonb.
상속: extends Doctrine\DBAL\Types\JsonArrayType
파일 보기 프로젝트 열기: neos/flow-development-collection 1 사용 예제들

보호된 프로퍼티들

프로퍼티 타입 설명
$persistenceManager Neos\Flow\Persistence\PersistenceManagerInterface
$reflectionService Neos\Flow\Reflection\ReflectionService

공개 메소드들

메소드 설명
convertToDatabaseValue ( array $array, Doctrine\DBAL\Platforms\AbstractPlatform $platform ) : mixed Converts a value from its PHP representation to its database representation of this type.
convertToPHPValue ( mixed $value, Doctrine\DBAL\Platforms\AbstractPlatform $platform ) : array Converts a value from its database representation to its PHP representation of this type.
getBindingType ( ) : integer Gets the (preferred) binding type for values of this type that can be used when binding parameters to prepared statements.
getMappedDatabaseTypes ( Doctrine\DBAL\Platforms\AbstractPlatform $platform ) : array We map jsonb fields to our datatype by default. Doctrine doesn't use jsonb at all.
getName ( ) : string Gets the name of this type.
getSQLDeclaration ( array $fieldDeclaration, Doctrine\DBAL\Platforms\AbstractPlatform $platform ) : string Use jsonb for PostgreSQL, this means we require PostgreSQL 9.4
requiresSQLCommentHint ( Doctrine\DBAL\Platforms\AbstractPlatform $platform ) : boolean We require a comment on the column to make doctrine recognize the type on already existing columns

보호된 메소드들

메소드 설명
decodeObjectReferences ( array &$array ) : void Traverses the $array and replaces known persisted objects (tuples of type and identifier) with actual instances.
encodeObjectReferences ( array &$array ) : void Traverses the $array and replaces known persisted objects with a tuple of type and identifier.
initializeDependencies ( ) : void Fetches dependencies from the static object manager.

메소드 상세

convertToDatabaseValue() 공개 메소드

Converts a value from its PHP representation to its database representation of this type.
public convertToDatabaseValue ( array $array, Doctrine\DBAL\Platforms\AbstractPlatform $platform ) : mixed
$array array The value to convert.
$platform Doctrine\DBAL\Platforms\AbstractPlatform The currently used database platform.
리턴 mixed The database representation of the value.

convertToPHPValue() 공개 메소드

Converts a value from its database representation to its PHP representation of this type.
public convertToPHPValue ( mixed $value, Doctrine\DBAL\Platforms\AbstractPlatform $platform ) : array
$value mixed The value to convert.
$platform Doctrine\DBAL\Platforms\AbstractPlatform The currently used database platform.
리턴 array The PHP representation of the value.

decodeObjectReferences() 보호된 메소드

Traverses the $array and replaces known persisted objects (tuples of type and identifier) with actual instances.
protected decodeObjectReferences ( array &$array ) : void
$array array
리턴 void

encodeObjectReferences() 보호된 메소드

Traverses the $array and replaces known persisted objects with a tuple of type and identifier.
protected encodeObjectReferences ( array &$array ) : void
$array array
리턴 void

getBindingType() 공개 메소드

Gets the (preferred) binding type for values of this type that can be used when binding parameters to prepared statements.
public getBindingType ( ) : integer
리턴 integer

getMappedDatabaseTypes() 공개 메소드

We map jsonb fields to our datatype by default. Doctrine doesn't use jsonb at all.
public getMappedDatabaseTypes ( Doctrine\DBAL\Platforms\AbstractPlatform $platform ) : array
$platform Doctrine\DBAL\Platforms\AbstractPlatform
리턴 array

getName() 공개 메소드

Gets the name of this type.
public getName ( ) : string
리턴 string

getSQLDeclaration() 공개 메소드

Use jsonb for PostgreSQL, this means we require PostgreSQL 9.4
public getSQLDeclaration ( array $fieldDeclaration, Doctrine\DBAL\Platforms\AbstractPlatform $platform ) : string
$fieldDeclaration array The field declaration
$platform Doctrine\DBAL\Platforms\AbstractPlatform The currently used database platform
리턴 string

initializeDependencies() 보호된 메소드

Injection cannot be used, since __construct on Types\Type is final.
protected initializeDependencies ( ) : void
리턴 void

requiresSQLCommentHint() 공개 메소드

We require a comment on the column to make doctrine recognize the type on already existing columns
public requiresSQLCommentHint ( Doctrine\DBAL\Platforms\AbstractPlatform $platform ) : boolean
$platform Doctrine\DBAL\Platforms\AbstractPlatform
리턴 boolean

프로퍼티 상세

$persistenceManager 보호되어 있는 프로퍼티

protected PersistenceManagerInterface,Neos\Flow\Persistence $persistenceManager
리턴 Neos\Flow\Persistence\PersistenceManagerInterface

$reflectionService 보호되어 있는 프로퍼티

protected ReflectionService,Neos\Flow\Reflection $reflectionService
리턴 Neos\Flow\Reflection\ReflectionService