2015-06-30 2 views
-5

У меня есть эта строка json и вы хотите ее декодировать и использовать. Но ниже результат печати пуст.Декодирование json array

$data = '{"Category": 
06-30 16:23:52.198: I/s(23262): [{"class":"ir.aiga.apps.datastore.db.CategoryModel","id":1,"name":"علی"},{"class":"ir.aiga.apps.datastore.db.CategoryModel","id":2,"name":"گ"},{"class":"ir.aiga.apps.datastore.db.CategoryModel","id":3,"name":"علی"},{"class":"ir.aiga.apps.datastore.db.CategoryModel","id":4,"name":"ولی"},{"class":"ir.aiga.apps.datastore.db.CategoryModel","id":5,"name":"ن"},{"class":"ir.aiga.apps.datastore.db.CategoryModel","id":6,"name":"تتاا"},{"class":"ir.aiga.apps.datastore.db.CategoryModel","id":7,"name":"بی اسم"},{"class":"ir.aiga.apps.datastore.db.CategoryModel","id":8,"name":"تسلام"},{"class":"ir.aiga.apps.datastore.db.CategoryModel","id":9,"name":"میدانم"}]}'; 

print json_decode($data)->{'Category'}; 

Я использую ниже код в Java, чтобы получить строку JSON

String s = "{\"Category\":\n"; 

List<CategoryModel> pmo = new ArrayList<CategoryModel>(); 
     pmo = CategoryModule.getAllRecords(c); 
     s += new JSONSerializer().serialize(pmo); 
s += "\n}"; 

что проблема?

+0

Неправильный синтаксис. См. Http://php.net/manual/en/function.json-decode.php –

+0

этот синтаксис в результате использования класса jsonSerialize() в java. Я не изменил строку. – ali

+0

Есть ли действительно случайные числа (выглядит как часть временной метки) в середине вашей строки? Если это так, это, безусловно, ваша проблема. –

ответ

0

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

$categories = json_decode($data)->{'Category'}; 
foreach($categories as $category){ 
    echo $category-{'id'}; 
}