/** * Static method for loading a Config instance. * * @param string|array $path * * @return Config */ public static function load($path) { $self = new self([]); $paths = $self->getValidPath($path); $data = []; foreach ($paths as $path) { // Get file information $info = pathinfo($path); $extension = isset($info['extension']) ? $info['extension'] : ''; $parser = $self->getParser($extension); // Try and load file $data = array_replace_recursive($data, $parser->parse($path)); } $self->setData($data); return $self; }