我的问题可能很愚蠢。但我需要澄清我对此的概念。
Laravel 中有多种读取数组的方法。如config()变量、.env函数、trans()函数、文件读取.csv等.txt。.json
可能他们都有不同的目的。但我需要知道从控制器读取数组数据的良好做法是什么。给出了一个例子。谢谢
数组示例:
       [
        "mohammad" => [
           "physics" => 35,
           "maths" => 30,   
           "chemistry" => 39
        ],
        "qadir" => [
           "physics" => 30,
           "maths" => 32,
           "chemistry" => 29
        ],
        "zara" => [
           "physics" => 31,
           "maths" => 22,
           "chemistry" => 39
        ]
     ]
Run Code Online (Sandbox Code Playgroud)
    小智 7
Laravelvar_export()在底层使用以下方式缓存配置:
$config = [
    'myvalue' => 123, 
    'mysub' => [
         'mysubvalue' => true
    ]
];
$code = '<?php return '.var_export($config, true).';'.PHP_EOL;
Run Code Online (Sandbox Code Playgroud)
其中$config可以是多维关联数组。如果将该字符串放入文件中:
file_put_contents(config_path('myconf.php'), $code);
Run Code Online (Sandbox Code Playgroud)
在代码中,您只需包含该文件即可获得结构
$myconfig = require config_path('myconf.php');
dd($myconfig);
Run Code Online (Sandbox Code Playgroud)
或(如果是配置文件)调用
echo config('myconf.myvalue');
Run Code Online (Sandbox Code Playgroud)
要以 Laravel 风格检索值,您可以使用 Illuminate\Config\Repository 类,例如。
$conf = new Illuminate\Config\Repository($myconfig);
echo $conf->get('mysub.mysubvalue');
Run Code Online (Sandbox Code Playgroud)
或者
echo Illuminate\Support\Arr::get($myconfig, 'mysub.mysubvalue');
Run Code Online (Sandbox Code Playgroud)
希望这能澄清并有所帮助
|   归档时间:  |  
           
  |  
        
|   查看次数:  |  
           6975 次  |  
        
|   最近记录:  |