final protected function validateArray(string $name, $value, array $allowed) : bool
    {
        if (true === in_array('array', $allowed)) {
            if (true === is_array($value)) {
                if (true === empty($value)) {
                    throw new \InvalidArgumentException('Array for '.$name.' is empty');
                } else {
                    foreach ($value as $line) {
                        if (false === is_string($line)) {
                            throw new \InvalidArgumentException('Array for '.$name.' contains a non-string item');
                        }
                    }

                    return true;
                }
            }
        }

        return false;
    }
final protected function validateArray(string $name, $value, array $allowed) : bool
    {
        if (true === in_array('array', $allowed)) {
            if (true === is_array($value)) {
                if (true === empty($value)) {
                    throw new \InvalidArgumentException('Array for '.$name.' is empty');
                } else {
                    foreach ($value as $line) {
                        if (false === is_string($line)) {
                            throw new \InvalidArgumentException('Array for '.$name.' contains a non-string item');
                        }
                    }

                    return true;
                }
            }
        }

        return false;
    }
final protected function validateArray ( string $ name , $ value , array $ allowed ) : bool { if ( true === in_array ( 'array' , $ allowed ) ) { if ( true === is_array ( $ value ) ) { if ( true === empty ( $ value ) ) { throw new \ InvalidArgumentException ( 'Array for ' . $ name . ' is empty' ) ; } else { foreach ( $ value as $ line ) { if ( false === is_string ( $ line ) ) { throw new \ InvalidArgumentException ( 'Array for ' . $ name . ' contains a non-string item' ) ; } } return true ; } } } return false ; }
Validates an array setting.

@param string $name    The name of the setting we are validating.
@param mixed  $value   The value we are validating.
@param array  $allowed Which items are allowed.

@throws \InvalidArgumentException If the data is inaccurate/incorrect.
@return bool True if validated, false if not
Validates an array setting .