IntegerType.php 848 Bytes
Newer Older
1 2
<?php

Michael Moravec's avatar
Michael Moravec committed
3 4
declare(strict_types=1);

5 6
namespace Doctrine\DBAL\Types;

7
use Doctrine\DBAL\ParameterType;
8 9
use Doctrine\DBAL\Platforms\AbstractPlatform;

10
/**
11
 * Type that maps an SQL INT to a PHP integer.
12
 */
13
class IntegerType extends Type implements PhpIntegerMappingType
14
{
15
    public function getName() : string
16
    {
17
        return Types::INTEGER;
18
    }
19

Benjamin Morel's avatar
Benjamin Morel committed
20 21 22
    /**
     * {@inheritdoc}
     */
23
    public function getSQLDeclaration(array $fieldDeclaration, AbstractPlatform $platform) : string
24
    {
25
        return $platform->getIntegerTypeDeclarationSQL($fieldDeclaration);
26 27
    }

Benjamin Morel's avatar
Benjamin Morel committed
28 29 30
    /**
     * {@inheritdoc}
     */
31
    public function convertToPHPValue($value, AbstractPlatform $platform)
32
    {
33
        return $value === null ? null : (int) $value;
34
    }
Christian Heinrich's avatar
Christian Heinrich committed
35

36
    public function getBindingType() : int
37
    {
38
        return ParameterType::INTEGER;
39
    }
Benjamin Eberlei's avatar
Benjamin Eberlei committed
40
}