【问题标题】:Receive object sent through POST from Javascript to PHP接收通过 POST 从 Javascript 发送到 PHP 的对象
【发布时间】:2020-04-29 17:52:15
【问题描述】:

在 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 变量接收对象。我想将此对象作为多维数组访问。我将如何引用该对象/变量及其内容?

如果我想连同 myobject 一起发送 (POST) 另一个变量 (myvar) 怎么办?如何发送两者,以及如何在 PHP 中访问它们?

【问题讨论】:

    标签: javascript php jquery arrays post


    【解决方案1】:

    您可以在发送到 PHP 处理程序之前对对象进行 jsonify。

    你的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"
    });
    

    您可以像这样在 PHP 中将 data 作为多维数组访问:

    $data = json_decode($_POST, true);
    // $data['myobj'] contains the object
    // $data['myvar'] contains the var 
    

    【讨论】:

    • $data[myobj] 现在是 PHP 中的关联数组了吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-04-23
    • 1970-01-01
    • 2010-12-02
    • 1970-01-01
    • 2019-08-28
    • 2017-09-20
    • 1970-01-01
    相关资源
    最近更新 更多