作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
与 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');
最佳答案
决定使用哪一个取决于上下文。
1. 通配符匹配
如果您需要在索引中使用通配符,则必须使用 data_get
如 Arr::get
不支持通配符。
例子:
Arr::get($my_arr, '*.lower'); // null
data_get($my_arr, '*.lower'); // ["aa", "bbb"]
Arr::get
简单地假设您的变量是一个数组。因此,如果使用对象,则必须使用
data_get
.但是,如果您确定您的变量是一个数组并且您不需要通配符,您应该继续使用
Arr::get
避免来自
data_get
的不必要检查评估您的变量是对象还是数组。
关于php - Laravel 5.7 中的 Arr::get() 与 data_get(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55185531/
我对 vue.js 比较陌生,偶然发现了这个问题。 在 php 中,我可以使用 data_get($variable, 'field') 来获取例如 $variable->field 值。 现在我正在
与 data_get()辅助函数,我们可以使用点 . 获取嵌套数组的值符号如下: $my_arr = [ 'a' => ['lower' => 'aa', 'upper' => 'AAA',]
我是一名优秀的程序员,十分优秀!