Intereting Posts
PHP для чтения значения DB, JS для его увеличения, AJAX для сохранения в DB, ​​но почему он по умолчанию 0.0 до обновления страницы? Как я могу поместить составные клавиши в модели в Laravel 5? Использовать WebService с php PHP: защита от инъекций с использованием подготовленных операторов Получение значений базы данных в переменной Javascript динамически PHP: поиск изображений и ссылок с относительным путем в выходе и преобразование их в абсолютный путь Редактирование цикла wordpress для отображения эскизов и выдержки Как избежать добавления одного и того же шаблона навигатора на каждую страницу .html Пометка фотографий на Facebook с помощью Graph API / PHP SDK Regex для замены <p class = "someClass"> тегом <h2>? Как заставить Symfony2 загружать файлы CSS, JS напрямую, а не через PHP? Форма представления не будет оставаться на одной странице Доступ к данным $ _POST в API PayPal returnURL Что более эффективно, строковые функции PHP или регулярное выражение в PHP? json_decode И json_encode длинные целые числа без потери данных

Получить значение из массива JSON в PHP

Я пытаюсь получить значение из этого следующего массива JSON в переменной PHP.

Это var_dump массива:

array(3) { ["id"]=> string(2) "14" ["css"]=> string(400) "" ["json"]=> string(4086) " { "Canvas": [ { "MainObjects": { "After Participation": { "afterParticipationHeader": "Thank you!" }, "Invite Friends": { "InviteHeadline": "", "InviteMsg": "", "InviteImg": "" } }, "QuizModule": { "Questions": [], "Submit_Fields": [ { "label": "Name", "name": "txtName", "value": true } ] } } ] }" } 

Я могу получить значения для ["json"] в PHP, например:

 $json = $data[0]['json']; 

Но как мне получить значение из массива внутри «json», например «AfterParticipationHeader». И «Submit_Fields»?

Сначала вы должны декодировать свои json-данные

 $json = json_decode($data[0]['json']); 

Затем вы можете получить доступ к своему AfterParticipationHeader

 $json->Canvas[0]->MainObjects->{"After Participation"}->afterParticipationHeader 

вы можете преобразовать действительную строку JSON в переменную PHP с помощью json_decode () . Обратите внимание на второй параметр, чтобы получить ассоциативный array вместо менее stdClass .

 $jsonData = json_decode($data[0]['json'], true); $header = $jsonData['Canvas']['MainObjects']['After Participation']['afterParticipationHeader']; 

Вы можете декодировать JSON через функцию json_decode :

 $json = json_decode($data[0]['json']); 

Затем у вас будут массивы (в той же структуре) с вашими данными.

Похоже, вам нужно его расшифровать. Попробуйте использовать: $json = json_decode($data[0]['json']);

Позвольте мне знать, если это помогает.