Чтение нескольких значений JSON с помощью PHP - PullRequest
0 голосов
/ 15 марта 2010

Я пытаюсь прочитать определенные значения из строки json в php, я могу сделать простую строку json только с одним значением, таким как

$json = '{"value":"somevalue"}';

Используя это:

<?php 
      $json = '{"value":"somevalue"}';
      $obj = json_decode(json_encode($json));
      print $obj->{'value'};
?>

Но когда я пытаюсь получить значение из следующей строки json, выдается ошибка ...

$json = '{"field": "title","rule": {"required": "true","minlength": "4","maxlength": "150" }}';

Я проверил json на JSONlint, но не уверен, как получить доступ к значениям в этом с помощью php.

  • Спасибо

Ответы [ 3 ]

3 голосов
/ 15 марта 2010

Вы можете попробовать это:

$json = '{"field": "title","rule": {"required": "true","minlength": "4","maxlength": "150" }}'; 
//since $json is a  valid json format you needn't encode and decode it again
$obj = json_decode($json);
print_r($obj->filed);
print_r($obj->rule);
0 голосов
/ 15 марта 2010

используйте var_dump, чтобы распечатать объект со всеми его элементами и иерархией. После этого вы сможете найти искомое значение

0 голосов
/ 15 марта 2010

Вы можете передать true в качестве второго параметра json_decode(), чтобы получить результаты в виде массива

$my_arr = json_decode($json, true);
var_dump($my_arr);

Должно помочь вам. Затем вы можете пройти через массив, как обычно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...