public static function createFromFile($_)
    {
        $files = array_reverse(func_get_args());

        if (is_array($files[0])) {
            $files = $files[0];
        }

        while (count($files) > 0) {
            try {
                $file = array_pop($files);

                if (! is_readable($file)) {
                    continue;
                }

                $config = static::createFromArray(
                    static::getFromCache($file, function ($file) {
                        return Loader::load($file);
                    })
                );

                if (null === $config) {
                    continue;
                }

                return $config;
            } catch (Exception $exception) {
                // Fail silently and try next file.
            }
        }

        return static::createFromArray([]);
    }
public static function createFromFile($_)
    {
        $files = array_reverse(func_get_args());

        if (is_array($files[0])) {
            $files = $files[0];
        }

        while (count($files) > 0) {
            try {
                $file = array_pop($files);

                if (! is_readable($file)) {
                    continue;
                }

                $config = static::createFromArray(
                    static::getFromCache($file, function ($file) {
                        return Loader::load($file);
                    })
                );

                if (null === $config) {
                    continue;
                }

                return $config;
            } catch (Exception $exception) {
                // Fail silently and try next file.
            }
        }

        return static::createFromArray([]);
    }
public static function createFromFile ( $ _ ) { $ files = array_reverse ( func_get_args ( ) ) ; if ( is_array ( $ files [ 0 ] ) ) { $ files = $ files [ 0 ] ; } while ( count ( $ files ) > 0 ) { try { $ file = array_pop ( $ files ) ; if ( ! is_readable ( $ file ) ) { continue ; } $ config = static :: createFromArray ( static :: getFromCache ( $ file , function ( $ file ) { return Loader :: load ( $ file ) ; } ) ) ; if ( null === $ config ) { continue ; } return $ config ; } catch ( Exception $ exception ) { // Fail silently and try next file. } } return static :: createFromArray ( [ ] ) ; }
Create a new ConfigInterface object from a file.

If a comma-separated list of files is provided, they are checked in sequence until the first one could be loaded
successfully.

@since 0.3.0

@param string|array $_ List of files.

@return ConfigInterface Instance of a ConfigInterface implementation.
Create a new ConfigInterface object from a file .