Получать объект, отправленный через POST от Javascript до PHP - PullRequest
0 голосов
/ 13 января 2020

В Javascript (с JQuery) я отправляю объект по почте следующим образом:

var myobj = {};
myobj['test'] = 1;
myobj['child'] = {};
myobj['child']['test2'] = 2;
var myvar = 123;
$.ajax({
  type: "POST",
  url: url,
  data: myobj,
  success: success,
  dataType: dataType
});

Теперь в PHP я получаю объект через переменную $ _POST. Я хотел бы получить доступ к этому объекту как многомерный массив. Как бы я сослался на этот объект / переменную и ее содержимое?

Что если бы я хотел отправить (POST) другую переменную (myvar) вместе с myobject? Как отправить оба сообщения и как я могу получить к ним доступ в PHP?

1 Ответ

0 голосов
/ 13 января 2020

Вы можете jsonify объект перед отправкой в ​​PHP обработчик.

Ваш javascript может быть таким:

var myobj = {};
myobj['test'] = 1;
myobj['child'] = {};
myobj['child']['test2'] = 2;
var myvar = 123;
$.ajax({
  type: "POST",
  url: url,
  data: {myobj: JSON.stringify(myobj), myvar: myvar},
  success: success,
  dataType: "json"
});

И вы можете получить доступ к data как многомерный массив в PHP примерно так:

$data = json_decode($_POST, true);
// $data['myobj'] contains the object
// $data['myvar'] contains the var 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...