在 laravel 5.4 刀片中通过键从多维数组中获取值
Posted
技术标签:
【中文标题】在 laravel 5.4 刀片中通过键从多维数组中获取值【英文标题】:Getting value from multidimensional array by key in laravel 5.4 blade 【发布时间】:2017-09-15 04:43:22 【问题描述】:当我试图从我的 php 刀片中的数组中获取值时遇到了一些困难。 结构比较清晰(用dd函数打印)
dd($attr)
array:4 [▼
"id" => "215"
"type" => "select"
"name" => "Status"
"value" => array:2 [▼
"pred" => array:3 [▼
0 => "Employed"
1 => "On vacation"
2 => "Dismissed"
]
"sel_val" => "0"
]
]
当我想通过键 'sel_val' 或 'pred' 获取值时
print_r($attr['value']['pred']);
它给了我非法的字符串偏移 'pred'
它在 Controller 中运行良好。我该怎么办?
【问题讨论】:
这是有效的 print_r($attr['value']['sel_val']); ? 您是否将 attr 变量传递给视图? 您能否出示您的刀片文件和return
控制器声明。
【参考方案1】:
它给出了这个错误,因为pred
也是一个数组。您必须执行$attr['value']['pred'][0]
才能获得Employed
,$attr['value']['pred'][1]
才能获得On vacation
,$attr['value']['pred'][2]
才能获得Dismissed
和$attr['value']['sel_val']
才能获得sel_val
的值,即0
in这个案例。希望这会有所帮助。
【讨论】:
【参考方案2】:当我们在控制器中以紧凑函数发送数组时工作正常
$record = array('id' => '215', 'type' => 'select', 'value' => array('pred' => array('0'=> 'Employed', '1' => 'On vacation', '2' => 'Dismissed'),'sel_val' => '0'));
return view('home', compact('record'));
【讨论】:
以上是关于在 laravel 5.4 刀片中通过键从多维数组中获取值的主要内容,如果未能解决你的问题,请参考以下文章
具有多维数组的 Foreach - Laravel Blade 模板