2015-02-28 2 views
0

Итак, у меня есть множество массивов, внутри которых у меня есть все данные, необходимые для передачи стороннему приложению. Проблема в том, что они нуждаются в ней в определенном формате JSON, и у меня нет идеи, как я могу это сделать. Формат данных они требуют, как:Создайте желаемый формат JSON, используя данные, хранящиеся в PHP

{ 
    "appData" : { 
     "appKey" : "blah blah", 
     "synth" : { 
     "synth1" : { 
      "mono" : [ 
       { 
        "monoId" : "529", 
        "templates" : [ 
        { 
         "monoSequenceMap" : [ 
          { 
           "map" : { 
           "X" : "3", 
           "Y" : "1" 
           }, 
           "position" : { 
           "scale" : "1", 
           "x1" : "100", 
           "x2" : "150", 
           "y1" : "2000", 
           "y2" : "2500" 
           } 
          }, 
          { 
           "map" : { 
           "X" : "2", 
           "Y" : "4" 
           }, 
           "position" : { 
           "scale" : "1", 
           "x1" : "200", 
           "x2" : "550", 
           "y1" : "1000", 
           "y2" : "1500" 
           } 
          }, 
          { 
           "map" : { 
           "X" : "3", 
           "Y" : "3" 
           }, 
           "position" : { 
           "scale" : "1.5", 
           "x1" : "300", 
           "x2" : "750", 
           "y1" : "1750", 
           "y2" : "1800" 
           } 
          }, 
          { 
           "map" : { 
           "X" : "4", 
           "Y" : "1" 
           }, 
           "position" : { 
           "scale" : "1.5", 
           "x1" : "680", 
           "x2" : "790", 
           "y1" : "1950", 
           "y2" : "1850" 
           } 
          } 
         ], 
         "templateId" : "01_A_19" 
        } 
        ] 
       } 
      ], 
      "synthId" : "XXXXXXXXXX" 
     } 
     } 
    } 
} 

Я просто хочу некоторые указатели о том, как преобразовать данные у меня есть в этом JSON строку. Я думаю, мне нужно использовать json_encode. Должен ли я создать новый класс с именем 'appData', затем создать каждый объект/массив внутри него? или я должен просто написать строку в этом формате в текстовый файл?

Моя проблема в том, что я не могу обернуть голову вокруг того, что все эти объекты внутри объектов ... как, например, в JSON synth - это объект, который содержит synth1, synth2 и т. Д., Которые будут объектами, которые, в свою очередь, будут иметь mono, который будет массивом объектов ... И я не уверен, как справиться с этим.

Любые указатели приветствуются!

ответ

0

Являются ли ваши массивы многомерными? Как:

$array = array(
    "data_table_1" => array(
     "item1" => "Item 1", 
     "item2" => "Item 2" 
    ), 
    "data_table_1" => array(
     "item1" => "Item 1", 
     "item2" => "Item 2" 
    ) 
); 

Если да, то все, что вы должны использовать это использование json_encode и что будет делать все кодирование для вас:

$json = @json_encode($array); 

==== ==== Редактировать
массивы сделать не должны быть многомерными. Даже массив с одним ключом => значение будет работать. Просто убедитесь, что у вас есть ключи для значений, поэтому они зарегистрированы правильно.

Смежные вопросы