将对象附加到数组的值?

时间:2018-07-20 16:31:04

标签: javascript php jquery

我要在php中完成的工作如下:

$var->doSomething(['chris' => ['age' => 22], 'evan']);

我通过formData发送一个数组(显然不像上面的问题),而php完全像这样读取数组:

$array = $_POST('arrayOfValues');
$var->doSomething($array);

我的js formdata上的数据如下:

var array = ['chris', 'evan'];
var data = new FormData();
array.forEach(function(item){
                            data.append('arrayOfValues[]', item);
                        });

我不知道如何实现它,一个熟人告诉我尝试一个对象,但是它没有用(我不知道是否必须用php或js解析它)。 PD:可以使用JQuery或JS,但是出于学习目的,我更喜欢后者

1 个答案:

答案 0 :(得分:0)

formData仅创建一组代表表单字段的键/值对。 如果要将复杂的对象发送到PHP,则必须使用JSON。

要创建JSon对象,请使用:

var myArrayObj = { ... };
var json = JSON.stringify( myArrayObject);

有关json的更多信息:http://www.json.org/js.html

因此,在PHP中,请使用:

var_dump(json_decode($json)); //where $json is your data from JS