Получение динамически генерируемых ключей и значений JSON

Ниже приведена структура JSON, которую я добавляю в свой скрипт PHP как запрос $ _POST. Ключи для названий кампаний и названий групп генерируются динамически, поэтому мне нужно извлечь эти ключи, чтобы затем я мог сгруппировать каждую кампанию с ее именем группы и копией рекламы в отдельные массивы.

Я видел несколько постов, которые очень похожи, но ни одно из этих решений пока не работает. Я чувствую, что чрезмерно усложняю это.

{
"First Campaign Name": {
"First Group Name": {
"textads": [
[
"{Headline text}",
"First line text",
"Second line text",
"Display URL"],
[
"{Headline text}",
"First line text",
"Second line text",
"Display URL"]
]
},
"Second Group Name": {
"textads": [
[
"{Headline text}",
"First line text",
"Second line text",
"Display URL"],
[
"{Headline text}",
"First line text",
"Second line text",
"Display URL"]
]
}
},
"Second Campaign Name": {
"First Group Name": {
"textads": [
[
"{Headline text}",
"First line text",
"Second line text",
"Display URL"],
[
"{Headline text}",
"First line text",
"Second line text",
"Display URL"]
]
},
"Second Group Name": {
"textads": [
[
"{Headline text}",
"First line text",
"Second line text",
"Display URL"],
[
"{Headline text}",
"First line text",
"Second line text",
"Display URL"]
]
}
}
}

Я пробовал несколько циклов foreach и вложенных циклов foreach, пытаясь получить доступ к ключам и значениям без удачи. Мои последние попытки:

foreach($jsonString as $campaign) {
foreach($campaign as $k => $v){
$postData .= "Key: " . $k . "\r\n";
$postData .= "Val: " . $v . "\r\n";
}
}

Где $ postData уже определен и затем сохранен в файл для вывода.
Я также попытался сделать следующее:

foreach ($_POST as $key => $value) {
foreach( $value as $item){
foreach( $item as $k => $v){
$postData .= "Key: " . $k . "\r\n";
$postData .= "Val: " . $v . "\r\n";
}
}
}

0

Решение

Вам нужно будет преобразовать JSON в массив php, прежде чем вы сможете использовать его с foreach.

$ phparray = json_decode ($ jsonString);

http://php.net/manual/en/function.json-decode.php

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]