初心者の頃からずっと気になってて夜しか眠れかった。
ConfigクラスのsetNested
getNested
removeNested
ソースコードを見てなんとなく動作は察しが付いてたけど、今更になって動作確認をした。
まあネストですよね。それ以上でもそれ以下でもない。
前提のconfig
config.yml
foo:
bar: "deceitya"
getNested
キーを.
で繋ぐだけです。setNestedもremoveNestedも同様。
Main.php
$this->getConfig()->getNested("foo.bar"); // deceitya
setNested
Main.php
$this->getConfig()->setNested("foo.bar", "dededeitya");
$this->getConfig()->setNested("hoge.huga", "tsukimiya");
$this->getConfig()->setNested("hoge.fuga", "tsukimiya2nd");
$this->getConfig()->setNested("server.mcbe.jp", ["deceitya", "ツキミヤ", "MCハッピー月宮"]);
$this->getConfig()->save();
実行後のconfig.yml
foo:
bar: dededeitya
hoge:
huga: tsukimiya
fuga: tsukimiya2nd
server:
mcbe:
jp:
- deceitya
- ツキミヤ
- MCハッピー月宮
removeNested
Main.php
$this->getConfig()->removeNested("hoge.huga");
$this->getConfig()->removeNested("server.mcbe.jp.1");
$this->getConfig()->save();
実行後のconfig.yml
foo:
bar: dededeitya
hoge:
fuga: tsukimiya2nd
server:
mcbe:
jp:
0: deceitya
2: MCハッピー月宮
hoge.fuga
のtsukimiyaとserver.mcbe.jp[1]
のツキミヤが消えましたね。
配列の要素を削除すると-
で表現されてた配列がキーの番号に変わるようです。
令和コソコソ噂話
12/15は @ribnil さんの誕生日だそうで。
去年のアドベントカレンダーは誕生日をご自身で担当されてたから、今年もてっきり担当するのかと(笑)(笑)