Supported Versions: PHP 4, PHP 5, PHP 7, PHP 8
                                                    Gets the value of a single or all environment variables
                                                                <?php getenv(?string $name = null, bool $local_only = false): string|array|false
    <?php             return (string) $_ENV[$name];
        }
        return getenv($name);
    }
    <?php         $config->merge(array('config' => array('a' => 'b', 'c' => '{$a}')));
        $config->merge(array('config' => array('bin-dir' => '$HOME', 'cache-dir' => '~/foo/')));
        $home = rtrim(getenv('HOME') ?: getenv('USERPROFILE'), '\\/');
        $this->assertEquals('b', $config->get('c'));
        $this->assertEquals($home, $config->get('bin-dir'));
        $this->assertEquals($home.'/foo', $config->get('cache-dir'));
    <?php             'vendor-dir' => 'vendor',
        )));
        $home = rtrim(getenv('HOME') ?: getenv('USERPROFILE'), '\\/');
        $this->assertEquals('/foo/bar/vendor', $config->get('vendor-dir'));
        $this->assertEquals($home.'/foo', $config->get('bin-dir'));
        $this->assertEquals('/baz', $config->get('cache-dir'));
    <?php     public static function createsVendorBinFolderChecksEnvDoesNotContainsBin()
    {
        mkdir(__DIR__ . '/vendor/bin', 0700, true);
        $val = getenv('PATH');
        if (!$val) {
            $val = getenv('Path');
    <?php         $val = getenv('PATH');
        if (!$val) {
            $val = getenv('Path');
        }
        self::assertStringNotContainsString(__DIR__ . DIRECTORY_SEPARATOR . 'vendor' . DIRECTORY_SEPARATOR . 'bin', $val);
    <?php     public static function createsVendorBinFolderChecksEnvContainsBin()
    {
        $val = getenv('PATH');
        if (!$val) {
            $val = getenv('Path');
    <?php         $val = getenv('PATH');
        if (!$val) {
            $val = getenv('Path');
        }
        self::assertStringContainsString(__DIR__ . DIRECTORY_SEPARATOR . 'vendor' . DIRECTORY_SEPARATOR . 'bin', $val);
    <?php     public static function getTestEnv()
    {
        $val = getenv('ABC');
        if ($val !== '123') {
            throw new \Exception('getenv() did not return the expected value. expected 123 got '. var_export($val, true));
        }
    <?php         $xdebug = new XdebugHandler('composer');
        self::$envOriginal = getenv('COMPOSER_ORIGINAL_INIS');
    }
    public static function tearDownAfterClass(): void
    <?php         putenv('TESTENV=/home/test');
        $this->assertEquals('/home/test/myPath', Platform::expandPath('%TESTENV%/myPath'));
        $this->assertEquals('/home/test/myPath', Platform::expandPath('$TESTENV/myPath'));
        $this->assertEquals((getenv('HOME') ?: getenv('USERPROFILE')) . '/test', Platform::expandPath('~/test'));
    }
    public function testIsWindows()