php - Laravel:从 json 类型字符串访问键值
问题描述
我从 Laravel 的请求中获得了这些数据
{"value":"QWS Welding Supply Solutions, Taylor Street","latitude":-27.4495148,"longitude":153.0696076}
但我无法单独访问密钥,即值、纬度、经度。我试过json_decode但这不起作用。
这是我的控制器方法
public function saveLocation(Request $request){
$location = $request->all();
Location::create(['address'=>$location->value,'long'=>$location->longitude,'lat'=>$location->latitude]);
}
基本上我想将位置数据从请求保存到数据库。在 $location 对象中,我得到了粘贴在顶部的数据
解决方案
我不知道简单的 json_decode 有什么问题,但我通过在 foreach 循环中使用 json_decode 然后访问密钥对值解决了我的问题
foreach (json_decode($location) as $key => $value) {
if($key=="value")
$obj['address'] = $value;
else
$obj[$key] = $value;
}
Location::create($obj);
推荐阅读
- javascript - p5js,如何使颜色跟随数组?
- python - numpy减法的操作数广播
- python - 使用 docker 安装 ruamel.yaml.clib
- node.js - ts + webpack 捆绑节点找不到模块“路径”
- amazon-web-services - AWS 托管的 Active Directory 用户身份验证问题
- python - 来自 Vivino.com 的数据抓取 - 葡萄酒信息和评论
- python - 如何优化与大熊猫数据框的连接?
- c# - 我如何添加 if 条件,例如 {{#if condition == true}} {{do somthing} {{/if} mustache sharp
- yaml - terraform 获取 yaml 值
- javascript - 无法从 mangopay 明信片响应中获取 json