Javascript 如何在php中获取包含一个数组对象的serializableArray jQuery?

Javascript 如何在php中获取包含一个数组对象的serializableArray jQuery?,javascript,php,jquery,arrays,arrayobject,Javascript,Php,Jquery,Arrays,Arrayobject,如何使我的对象数组在jquery到php中可序列化 我有这个: 我需要用php中的jQuery(vetDespesas)发送这个数组来创建我的sql查询 我尝试使用dump phpserialize,unserialize,但它不起作用 我在jQuery中使用这个: // this = my Form html var dataSend = $(this).serializeArray(); // other datas... dataSend.push({name:

如何使我的对象数组在jquery到php中可序列化

我有这个:

我需要用php中的
jQuery(vetDespesas)
发送这个数组来创建我的sql查询

我尝试使用dump php
serialize
unserialize
,但它不起作用

我在jQuery中使用这个:

   // this = my Form html

    var dataSend = $(this).serializeArray(); // other datas...

    dataSend.push({name:'moeda',value:moeda});
    dataSend.push({name:'moedaCotacao',value:moedaCotacao});
    **dataSend.push({name:'vetDespesas',value:vetDespesas});** object array
在php中,如何编写代码

$requisitadopor = $_POST['requisitadopor'];
$autorizadopor = $_POST['autorizadopor'];
$departamento = $_POST['departamento'];
$unidade = $_POST['unidade'];

var_dump($_POST['vetDespesas']);  // doesn't work =/ (array of objects)

vetDespesas=JSON.stringify(vetDespesas)

我使用:

    $a = json_decode($_POST['vetDespesas']);
    var_dump($a[0]);
我的chrome控制台打印:

对象(stdClass)[2] 公共“dataDespesa”=>字符串“15/12/2015”(长度=10) 公共'descDespesa'=>字符串'teste1'(长度=6) 公共“BudgetDespisa”=>字符串“001 001 0E2R”(长度=12) 公共“valorDespesa”=>字符串“2133.33”(长度=7)
如何访问此数据?

在将其发送到PHP之前,应将其转换为JSON字符串:

vetDespesas = JSON.stringify(vetDespesas);
要在PHP代码中获取对象,应该使用
json\u decode()

您可以使用
->
访问
对象(stdClass)
属性,例如:

echo $my_object->dataDespesa;
echo $my_object->budgetDespesa;

希望这有帮助。

No=/i使用var_dump函数,返回值是:字符串“[object object],[object object],[object object]”(length=47),您在javascript中初始化了
vetdespeas
?我的vetDespesa是用javascript初始化的,是正确的。。var vetDespesas=criaVetorObjDespesa();var dataSend=$(this.serializeArray();push({name:'vetDespesas',value:vetDespesas});我尝试了你的更新,但不起作用。控制台google chrome:注意:第34行C:\wamp\www\britanicaBlueForm2\templatesHTML\php\adiantamento.php中的数组到字符串转换。。。。。我的第34行=>$a=json_解码($_POST['vetdespeas']);回声$a[0]。。。。对不起,我是php的新手,这是真的,因为
$a[0]
将返回
vetDespesas
中的第一个对象,它是一个数组,因此您应该使用
print\r($a[0])
而不是
echo
。请记住,您可以在stackoverflow中添加图像,您不需要外部页面(这可能会导致死亡,从而损害将来的问题)。在这种情况下,console.log的复制粘贴是更好的选择。另外,请保持你的文字简洁,并回答问题。谢谢k0pernikus下一个答案我会做的=)
echo $my_object->dataDespesa;
echo $my_object->budgetDespesa;