private function resolveCellsPaddings(): array
    {
        $return = [0, 0, 0, 0];

        // If padding is not set, return default values
        if (false === isset($this->options['cells_padding'])) {
            return $return;
        }

        // Create a resolver to validate passed values
        $resolver = new OptionsResolver();
        $resolver->setDefined(0);
        $resolver->setDefined(1);
        $resolver->setDefined(2);
        $resolver->setDefined(3);

        $resolver->setAllowedTypes(0, 'integer');
        $resolver->setAllowedTypes(1, 'integer');
        $resolver->setAllowedTypes(2, 'integer');
        $resolver->setAllowedTypes(3, 'integer');

        $padding = $this->options['cells_padding'];

        // If is only an integer, make it an array with only one set value
        if (is_int($padding)) {
            $padding = [$padding];
        }

        $count = count($padding);

        switch ($count) {
            case 1:
                // Set the same padding for all directions
                $return = [$padding[0], $padding[0], $padding[0], $padding[0]];
                break;

            case 2:
                // 0: Top and Bottom; 1: Left and Right
                $return = [$padding[0], $padding[1], $padding[0], $padding[1]];
                break;

            case 3:
                // 0: Top; 1: Left and Right; 2: Bottom
                $return = [$padding[0], $padding[1], $padding[2], $padding[1]];
                break;

            case 4:
                // 0: Top; 1: Right; 2: Bottom; 3: Left
                $return = [$padding[0], $padding[1], $padding[2], $padding[3]];
                break;
        }

        return $return;
    }
private function resolveCellsPaddings(): array
    {
        $return = [0, 0, 0, 0];

        // If padding is not set, return default values
        if (false === isset($this->options['cells_padding'])) {
            return $return;
        }

        // Create a resolver to validate passed values
        $resolver = new OptionsResolver();
        $resolver->setDefined(0);
        $resolver->setDefined(1);
        $resolver->setDefined(2);
        $resolver->setDefined(3);

        $resolver->setAllowedTypes(0, 'integer');
        $resolver->setAllowedTypes(1, 'integer');
        $resolver->setAllowedTypes(2, 'integer');
        $resolver->setAllowedTypes(3, 'integer');

        $padding = $this->options['cells_padding'];

        // If is only an integer, make it an array with only one set value
        if (is_int($padding)) {
            $padding = [$padding];
        }

        $count = count($padding);

        switch ($count) {
            case 1:
                // Set the same padding for all directions
                $return = [$padding[0], $padding[0], $padding[0], $padding[0]];
                break;

            case 2:
                // 0: Top and Bottom; 1: Left and Right
                $return = [$padding[0], $padding[1], $padding[0], $padding[1]];
                break;

            case 3:
                // 0: Top; 1: Left and Right; 2: Bottom
                $return = [$padding[0], $padding[1], $padding[2], $padding[1]];
                break;

            case 4:
                // 0: Top; 1: Right; 2: Bottom; 3: Left
                $return = [$padding[0], $padding[1], $padding[2], $padding[3]];
                break;
        }

        return $return;
    }
private function resolveCellsPaddings ( ) : array { $ return = [ 0 , 0 , 0 , 0 ] ; // If padding is not set, return default values if ( false === isset ( $ this -> options [ 'cells_padding' ] ) ) { return $ return ; } // Create a resolver to validate passed values $ resolver = new OptionsResolver ( ) ; $ resolver -> setDefined ( 0 ) ; $ resolver -> setDefined ( 1 ) ; $ resolver -> setDefined ( 2 ) ; $ resolver -> setDefined ( 3 ) ; $ resolver -> setAllowedTypes ( 0 , 'integer' ) ; $ resolver -> setAllowedTypes ( 1 , 'integer' ) ; $ resolver -> setAllowedTypes ( 2 , 'integer' ) ; $ resolver -> setAllowedTypes ( 3 , 'integer' ) ; $ padding = $ this -> options [ 'cells_padding' ] ; // If is only an integer, make it an array with only one set value if ( is_int ( $ padding ) ) { $ padding = [ $ padding ] ; } $ count = count ( $ padding ) ; switch ( $ count ) { case 1 : // Set the same padding for all directions $ return = [ $ padding [ 0 ] , $ padding [ 0 ] , $ padding [ 0 ] , $ padding [ 0 ] ] ; break ; case 2 : // 0: Top and Bottom; 1: Left and Right $ return = [ $ padding [ 0 ] , $ padding [ 1 ] , $ padding [ 0 ] , $ padding [ 1 ] ] ; break ; case 3 : // 0: Top; 1: Left and Right; 2: Bottom $ return = [ $ padding [ 0 ] , $ padding [ 1 ] , $ padding [ 2 ] , $ padding [ 1 ] ] ; break ; case 4 : // 0: Top; 1: Right; 2: Bottom; 3: Left $ return = [ $ padding [ 0 ] , $ padding [ 1 ] , $ padding [ 2 ] , $ padding [ 3 ] ] ; break ; } return $ return ; }
Set the padding of the cells.

This is the number of spaces to put on the left and on the right and on top and bottom of the content in each cell.

This method follows the rules of the padding CSS rule.

@see http://www.w3schools.com/css/css_padding.asp

@throws \InvalidArgumentException If the value is not an integer

@return array
Set the padding of the cells .