Javascript 如何在php中获取包含一个数组对象的serializableArray jQuery?
如何使我的对象数组在jquery到php中可序列化 我有这个: 我需要用php中的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(vetDespesas)
发送这个数组来创建我的sql查询
我尝试使用dump phpserialize
,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;