gpt4 book ai didi

php - Laravel 5.7 中的 Arr::get() 与 data_get()

转载 作者:行者123 更新时间:2023-12-04 02:50:40 39 4
gpt4 key购买 nike

data_get()辅助函数,我们可以使用点 . 获取嵌套数组的值符号如下:

$my_arr = [
'a' => ['lower' => 'aa', 'upper' => 'AAA',],
'b' => ['lower' => 'bbb', 'upper' => 'BBBBB',],
];

因此,我可以降低 a通过做这个。
data_get($my_arr, 'a.lower');

您还可以执行以下操作。
Arr::get('a.lower');

如果我只想获得数组的第一级。我只能两者兼得:
data_get($my_arr, 'a');

或者
Arr::get($my_arr, 'a');

你推荐我哪一个,为什么?我只是想不断改进我的 Laravel 体验,并从高级开发人员那里获得好的建议,以选择目前最好的选项。

最佳答案

决定使用哪一个取决于上下文。

1. 通配符匹配

如果您需要在索引中使用通配符,则必须使用 data_getArr::get不支持通配符。

例子:

Arr::get($my_arr, '*.lower'); // null
data_get($my_arr, '*.lower'); // ["aa", "bbb"]

2. 变量类型
Arr::get简单地假设您的变量是一个数组。因此,如果使用对象,则必须使用 data_get .但是,如果您确定您的变量是一个数组并且您不需要通配符,您应该继续使用 Arr::get避免来自 data_get 的不必要检查评估您的变量是对象还是数组。

关于php - Laravel 5.7 中的 Arr::get() 与 data_get(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55185531/

39 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com