/** * Returns all raw configuration values as flat array. * * Unlike {@link toFlatArray()}, this method does not resolve placeholders: * * ```php * $config = new Config(); * $config->set(Config::PULI_DIR, '.puli'); * $config->set(Config::REGISTRY_FILE, '{$puli-dir}/ServiceRegistry.php'); * * print_r($config->toFlatArray()); * // Array( * // 'puli-dir' => '.puli', * // 'registry-file' => '.puli/ServiceRegistry.php', * // ) * * print_r($config->toFlatRawArray()); * // Array( * // 'puli-dir' => '.puli', * // 'registry-file' => '{$puli-dir}/ServiceRegistry.php', * // ) * ``` * * @param bool $includeFallback Whether to include values set in the base * configuration passed to {@link __construct()}. * * @return array The raw configuration values. */ public function toFlatRawArray($includeFallback = true) { return $includeFallback && $this->baseConfig ? array_replace($this->baseConfig->toFlatRawArray(), $this->values) : $this->values; }
public function testToFlatRawArrayWithoutFallback() { $baseConfig = new Config(); $baseConfig->set(Config::PULI_DIR, 'my-puli-dir'); $baseConfig->set(Config::REPOSITORY_TYPE, 'my-type'); $config = new Config($baseConfig); $config->set(Config::REPOSITORY_PATH, '{$puli-dir}/my-path'); $this->assertSame(array(Config::REPOSITORY_PATH => '{$puli-dir}/my-path'), $config->toFlatRawArray(false)); }