qqq
This commit is contained in:
@@ -48,6 +48,36 @@ class ConfigProvider
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param string $key
|
||||||
|
* @param mixed $value
|
||||||
|
* @return bool
|
||||||
|
*/
|
||||||
|
public function modify(string $key, mixed $value): bool
|
||||||
|
{
|
||||||
|
$keys = explode('.', $key);
|
||||||
|
|
||||||
|
$hashMap = $this->hashMap->get(array_shift($keys));
|
||||||
|
if (is_null($hashMap)) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
$setting = &$hashMap;
|
||||||
|
foreach ($keys as $k => $val) {
|
||||||
|
if (!is_array($val)) {
|
||||||
|
unset($setting);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
$setting = &$setting[$k];
|
||||||
|
}
|
||||||
|
|
||||||
|
$setting = $value;
|
||||||
|
unset($setting);
|
||||||
|
|
||||||
|
return $this->get($key) == $value;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param array $config
|
* @param array $config
|
||||||
* @return void
|
* @return void
|
||||||
|
|||||||
Reference in New Issue
Block a user