2014-02-10 3 views
0

Я пытаюсь данных JSON гнездо из массива так, как:Гнездо JSON данных из массива

{ 
"subscriptionState" : "SUBSCRIBED", 
"division" : { 
    "value" : "Retail" 
} 
, 
"attributes" : { 
    "attributes" : [ 
     { 
      "name" : "email", 
      "value" : "[email protected]" 
     } 
    , 
     { 
      "name" : "firstName", 
      "value" : "John" 
     } 
    , 
     { 
      "name" : "lastName", 
      "value" : "Doe" 
     } 
    , 
     { 
      "name" : "postalCode", 
      "value" : "97209" 
     } 
    ] 
    } 
} 

В настоящее время мои данные выглядит следующим образом:

{ 
"subscriptionState": "UNSUBSCRIBED", 
"division": { 
    "value": "UK" 
}, 
"attributes": { 
    "email": "[email protected]", 
    "firstName": "Karina", 
    "lastName": "McG", 
    "postCode": "BT93 EP3", 
    "prefersMobile": "", 
    "emailFormat": "HTML" 
    } 
} 

Код:

$ym_api_url = 'https://connect.api.com/import'; 
$newsubscriber = array(
'subscriptionState' => 'UNSUBSCRIBED', 
'division' => array(
'value' => 'UK' 
), 
'attributes' => array(
'firstName' => 'Karina', 
'lastName' => 'McGourty', 
'postCode' => 'BT93 EP3', 
'prefersMobile' => '', 
'emailFormat' => 'HTML' 
) 
); 

Что было бы правильным способом сделать это, я пробовал что-то вроде:

'attributes' => array(
'attributes' => array(
(
'name' => 'email', 
'value' => '[email protected]' 
), 
(
'name' => 'firstName', 
'value' => 'Karina' 
) 

но не радость?

+1

Можете ли вы попробовать это JSON.stringify (yourArray) ; – Dheer

ответ

0

я понял это сам, в конце концов, я знаю его простой вопрос, но я думал, что разделю свой ответ в случае кто-нибудь приходит через это:

$newsubscriber = array(
'subscriptionState' => 'UNSUBSCRIBED', 
'division' => array(
'value' => 'UK' 
), 
'attributes' => array(
'attributes' => array(
array(
'name' => 'email', 
'value' => '[email protected]'), 
array(
'name' => 'firstName', 
'value' => 'Karina'), 
array(
'name' => 'lastName', 
'value' => 'McG'), 
array(
'name' => 'postalCode', 
'value' => 'BT93 EP3'), 
array(
'name' => 'prefersMobile', 
'value' => '-1'), 
array(
'name' => 'emailFormat', 
'value' => 'HTML') 
    ) 
    ) 
); 
Смежные вопросы