Doctrine\DBAL\Platforms\OraclePlatform::getDateArithmeticIntervalExpression PHP Метод

getDateArithmeticIntervalExpression() защищенный Метод

protected getDateArithmeticIntervalExpression ( $date, $operator, $interval, $unit )
    protected function getDateArithmeticIntervalExpression($date, $operator, $interval, $unit)
    {
        switch ($unit) {
            case self::DATE_INTERVAL_UNIT_MONTH:
            case self::DATE_INTERVAL_UNIT_QUARTER:
            case self::DATE_INTERVAL_UNIT_YEAR:
                switch ($unit) {
                    case self::DATE_INTERVAL_UNIT_QUARTER:
                        $interval *= 3;
                        break;
                    case self::DATE_INTERVAL_UNIT_YEAR:
                        $interval *= 12;
                        break;
                }
                return 'ADD_MONTHS(' . $date . ', ' . $operator . $interval . ')';
            default:
                $calculationClause = '';
                switch ($unit) {
                    case self::DATE_INTERVAL_UNIT_SECOND:
                        $calculationClause = '/24/60/60';
                        break;
                    case self::DATE_INTERVAL_UNIT_MINUTE:
                        $calculationClause = '/24/60';
                        break;
                    case self::DATE_INTERVAL_UNIT_HOUR:
                        $calculationClause = '/24';
                        break;
                    case self::DATE_INTERVAL_UNIT_WEEK:
                        $calculationClause = '*7';
                        break;
                }
                return '(' . $date . $operator . $interval . $calculationClause . ')';
        }
    }
OraclePlatform