読み込みが終了しない場合は、しばらく待つか、リロードを行なってください。
If loading does not finish, wait for a while or reload.
エンジニア向けの情報を発信するブログです。
どなたでも発信できます。
お好きに利用していただれば幸いです。

📁 hoge.php
<?php
const CONSTS = [
'key1' => 'beginner',
'key2' => [
'engineer',
],
'key3' => [
'blog' => [
'中の人',
],
],
];
function config(string $key, $default = null)
{
$array = CONSTS;
if (false === strpos($key, '.')) {
return $array[$key] ?? $default;
}
foreach (explode('.', $key) as $segment) {
if (array_key_exists($segment, $array)) {
$array = $array[$segment];
} else {
return $default;
}
}
return $array;
}
echo "\n--------------\n";
echo '1: ';
var_dump(config('key1'));
echo "\n--------------\n";
echo '2: ';
var_dump(config('key2'));
echo "\n--------------\n";
echo '3: ';
var_dump(config('key3'));
echo "\n--------------\n";
echo '4: ';
var_dump(config('key0', 'hello!'));
echo "\n--------------\n";
echo '5: ';
var_dump(config('key1', 'hey!'));
echo "\n--------------\n";
echo '6: ';
var_dump(config('key2.key2'));
echo "\n--------------\n";
echo '7: ';
var_dump(config('key2.key2', 'wow!'));
echo "\n--------------\n";
echo '8: ';
var_dump(config('key3.blog'));
echo "\n--------------\n";
ターミナル % php hoge.php
--------------
1: string(8) "beginner"
--------------
2: array(1) {
[0]=>
string(8) "engineer"
}
--------------
3: array(1) {
["blog"]=>
array(1) {
[0]=>
string(9) "中の人"
}
}
--------------
4: string(6) "hello!"
--------------
5: string(8) "beginner"
--------------
6: NULL
--------------
7: string(4) "wow!"
--------------
8: array(1) {
[0]=>
string(9) "中の人"
}
--------------
📁 vendor/laravel/framework/src/Illuminate/Support/Arr.php