Вход Регистрация
Файл: src/vendor/vlucas/phpdotenv/src/Dotenv.php
Строк: 63
<?php

namespace Dotenv;

/**
 * This is the dotenv class.
 *
 * It's responsible for loading a `.env` file in the given directory and
 * setting the environment vars.
 */
class Dotenv
{
    
/**
     * The file path.
     *
     * @var string
     */
    
protected $filePath;

    
/**
     * The loader instance.
     *
     * @var DotenvLoader|null
     */
    
protected $loader;

    public function 
__construct($path, $file = '.env')
    {
        
$this->filePath = $this->getFilePath($path, $file);
        
$this->loader = new Loader($this->filePath, $immutable = true);
    }

    
/**
     * Load `.env` file in given directory.
     *
     * @return array
     */
    
public function load()
    {
        
$this->loader = new Loader($this->filePath, $immutable = true);

        return 
$this->loader->load();
    }

    
/**
     * Load `.env` file in given directory.
     *
     * @return array
     */
    
public function overload()
    {
        
$this->loader = new Loader($this->filePath, $immutable = false);

        return 
$this->loader->load();
    }

    
/**
     * Returns the full path to the file.
     *
     * @param string $path
     * @param string $file
     *
     * @return string
     */
    
protected function getFilePath($path, $file)
    {
        if (!
is_string($file)) {
            
$file = '.env';
        }

        
$filePath = rtrim($path, DIRECTORY_SEPARATOR).DIRECTORY_SEPARATOR.$file;

        return 
$filePath;
    }

    
/**
     * Required ensures that the specified variables exist, and returns a new Validator object.
     *
     * @param string|string[] $variable
     *
     * @return DotenvValidator
     */
    
public function required($variable)
    {
        return new 
Validator((array) $variable, $this->loader);
    }
}
Онлайн: 4
Реклама