JSON Post PHP (TypeForm)

Я никогда раньше не использовал JSON, поэтому извиняюсь, если это простой запрос.

У меня есть настройка webhook, которая отправляет мне сообщение JSON (пример ниже) — я хочу извлечь два ответа из этого "text":"250252" & {"label":"CE"}

{
"event_id": "1",
"event_type": "form_response",
"form_response": {
"form_id": "VpWTMQ",
"token": "1",
"submitted_at": "2018-05-22T14:11:56Z",
"definition": {
"id": "VpWTMQ",
"title": "SS - Skill Change",
"fields": [
{
"id": "kUbaN0JdLDz8",
"title": "Please enter your ID",
"type": "short_text",
"ref": "9ac66945-899b-448d-859f-70562310ee5d",
"allow_multiple_selections": false,
"allow_other_choice": false
},
{
"id": "JQD4ksDpjlln",
"title": "Please select the skill required",
"type": "multiple_choice",
"ref": "a24e6b58-f388-4ea9-9853-75f69e5ca337",
"allow_multiple_selections": false,
"allow_other_choice": false
}
]
},
"answers": [
{
"type": "text",
"text": "250252",
"field": {
"id": "kUbaN0JdLDz8",
"type": "short_text"}
},
{
"type": "choice",
"choice": {
"label": "CE"},
"field": {
"id": "JQD4ksDpjlln",
"type": "multiple_choice"}
}
]
}
}

У меня есть это в настоящее время в моем файле PHP:

$data = json_decode(file_get_contents('php://input'));
$ID = $data->{"text"};
$Skill = $data->{"label"};

Это не работает, и все, что я получаю, является нулевым — любая помощь будет очень признательна, спасибо.

0

Решение

Вам нужно посмотреть на объект JSON, который вы получаете, чтобы знать структуру объекта, который вы получаете после использования json_decodeто, что вы пытаетесь получить, находится в $data->form_response->answersТаким образом, вы можете иметь переменную для более легкого доступа:

$answers = $data->form_response->answers;

Помните $answers это массив

Итак, чтобы достичь того, что вы пытаетесь получить, вы можете сделать:

$data = json_decode(file_get_contents('php://input'));
$answers = $data->form_response->answers;
$ID = $answers[0]->text;
$Skill = $answers[1]->choice->label;
2

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

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

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