简单研究了下webman/Config.php,目前只有get方法,没有类似set方法。
于是简单造了一个很简单的set方法,如下
如下方法仅为简易版set,如需复杂set可自行研究一下!当然也可以搜索插件市场!
/**
* 简易版set,最大支持5级点号;value尽量为简单类型(int/string/bool.)
*
* @param string $key
* @param mixed $value
* @return void|bool
*/
public static function set(string $key = null, $value = null)
{
if ($key == null || $value == null) {
return false;
}
$key_array = \explode('.', $key);
$count = \count($key_array);
switch ($count) {
case 1:
static::$_config[$key_array[0]] = $value;
break;
case 2:
static::$_config[$key_array[0]][$key_array[1]] = $value;
break;
case 3:
static::$_config[$key_array[0]][$key_array[1]][$key_array[2]] = $value;
break;
case 4:
static::$_config[$key_array[0]][$key_array[1]][$key_array[2]][$key_array[3]] = $value;
break;
case 5:
static::$_config[$key_array[0]][$key_array[1]][$key_array[2]][$key_array[3]][$key_array[4]] = $value;
break;
case 6:
static::$_config[$key_array[0]][$key_array[1]][$key_array[2]][$key_array[3]][$key_array[4]][$key_array[5]] = $value;
break;
}
}
use Webman\Config;
Config::set("key1.key2", $value1);