你好,我有一点json数组。当我试图从json数组中获取值时。
控制器
$data['payment'] = $this->admin->get_payment_settings();
$value = $data['payment'][0]->json;
echo $value['username'];
你好,我在数据库中有一个json数组。使用我的控制器我得到了归档的json。当我做一个var_dump($ value)数组看起来像这样
{"username":"foodi1.lch.co","password":"FBUEWQH6X4D","signature":"AFcWxV21C7fd0v3bZnWKgr9on9AmTuhyd4MVq","currency":"CAD"}
我想从这个数组中获取每个值。
echo $value['username'];
echo $value['password'];
当我尝试这样做时,我收到错误
A PHP Error was encountered
Severity: Warning
Message: Illegal string offset 'username'
Filename: controllers/administrator.php
Line Number: 620
有人可以帮助我从json数组中获取值。 TNX ..
答案 0 :(得分:2)
您需要将字符串解码为有效数组,使用json_decode
,如下所示:
$json = json_decode($value, true);
echo $json['username'];
答案 1 :(得分:0)
看来你的$data['payment'][0]
是json string。所以你需要解码它。
试试这种方式
$value=json_decode($data['payment'][0]->json,true);//second parameter true will return as array.
echo $value['username'];