HEX
Server: LiteSpeed
System: Linux server334.web-hosting.com 4.18.0-553.124.4.lve.el8.x86_64 #1 SMP Fri May 15 13:02:13 UTC 2026 x86_64
User: richfield (1256)
PHP: 8.2.31
Disabled: NONE
Upload Files
File: //home/richfield/www/vendor/php-flasher/flasher/Config/Config.php
<?php

/*
 * This file is part of the PHPFlasher package.
 * (c) Younes KHOUBZA <younes.khoubza@gmail.com>
 */

namespace Flasher\Prime\Config;

/**
 * @phpstan-import-type ConfigType from ConfigInterface
 */
final class Config implements ConfigInterface
{
    /**
     * @phpstan-var array{}|ConfigType
     */
    private $config;

    /**
     * @phpstan-param array{}|ConfigType $config
     */
    public function __construct(array $config = array())
    {
        $this->config = $config;
    }

    /**
     * {@inheritdoc}
     */
    public function get($key, $default = null)
    {
        $data = $this->config;

        foreach (explode('.', $key) as $segment) {
            if (!isset($data[$segment])) { // @phpstan-ignore-line
                return $default;
            }

            $data = $data[$segment];
        }

        return $data;
    }
}