2015-06-09 4 views
2

Привет, у меня есть немного из массива json. когда я пытаюсь получить значения из json-массива.Получение значений из json-массива в codeigniter

Контроллер

$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. Тпй ..

+0

'$ значение = json_decode ($ значение, правда), эхо $ значение [ 'имя пользователя'];' –

+0

@ShaifulIslam TNX. что фиксировало мою проблему. PLZ добавить, что в качестве ответа я буду принимать его. –

ответ

0

Кажется, что ваш $data['payment'][0] является JSON string.So вам нужно расшифровать.

Попробуйте этот путь

$value=json_decode($data['payment'][0]->json,true);//second parameter true will return as array.  
echo $value['username']; 
2

Вы должны декодировать строку действительного массива, используйте json_decode следующим образом:

$json = json_decode($value, true); 
echo $json['username'];