2017-06-21 3 views
0

Ich versuche, json zu dekodieren und Wert aus dem JSON-Code.wie aus json array in codeingiter lesen

[{ 
    "restaurant_id":1, 
    "menu_template_id":2, 
    "add_food_item_a":1, 
    "menu_category_id":1, 
    "status":0 
} , 
{ 
    "restaurant_id":1, 
    "menu_template_id":2, 
    "add_food_item_a":2, 
    "menu_category_id":1, 
    "status":0 
}] 

ich muss von diesem json lesen und ein Array mit add_food_item_a und Status erstellen.

zur Zeit verwende ich wie dieses

public function readJson() 
    { 
     $json_obj = json_decode(''); 
     if (isset($GLOBALS["HTTP_RAW_POST_DATA"]) && !empty($GLOBALS["HTTP_RAW_POST_DATA"])) { 
      $json_text = $this->cleanMe($GLOBALS["HTTP_RAW_POST_DATA"]); 
      // now insert into user table 
      $json_obj = json_decode($json_text); 
     } 
     return $json_obj; 
    } 

und ich nenne diese Funktion wie

$add_food_item_a = isset($json_obj->add_food_item_a) ? $json_obj->add_food_item_a : ''; 

kann aber nicht von dieser Anordnung von json Code lesen

+0

haben Sie versucht, 'json_decode' zu ​​verwenden? – FMashiro

+0

Benutzer json_decode ($ your_array, true); Dann foreach-Schleife verwenden, um assoziative Array zu reisen und dann können Sie die Any sind mit dem verfügbaren assoziativen Array-Parameter – pAsh

+0

zuerst von diesem ist in api, ich kann nicht in Berührung bekommen. – Midhun

Antwort

1

Sie versuchen, hole den Wert von 'add_food_item_a' und 'status'

<?php 

    $json='[{ 
     "restaurant_id":1, 
     "menu_template_id":2, 
     "add_food_item_a":1, 
     "menu_category_id":1, 
     "status":0 
    } , 
    { 
     "restaurant_id":1, 
     "menu_template_id":2, 
     "add_food_item_a":2, 
     "menu_category_id":1, 
     "status":0 
    }]'; 

    echo "<pre>"; 
    $array = json_decode($json,1); 
    print_r($array); 
    foreach($array as $value) 
    { 
     echo "\n".$value['add_food_item_a']; 
     echo "\n".$value['status']; 
    } 
+0

mein JSON-Code ist im Postboten, ich muss als ein Array retreve das ist mein Problem – Midhun

+0

'json_decode ($ json_text, 1);' übergeben 1 als Parameter zu 'json_decode' werden Sie Holen Sie sich ein Array –

+0

aber zeigt einen Fehler wie "Kann nicht Objekt des Typs stdClass als Array verwenden" – Midhun