Как я могу получить jQuery serializableArray, содержащий один объект массива в php?


Как я могу сериализовать массив объектов в jquery на php?

У меня есть это:

console log of array structure

Мне нужно, чтобы этот массив был отправлен jQuery(vetDespesas) в php для создания моего sql-запроса.

Я пытаюсь использовать 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)


Ветдеспесы = JSON.stringify(ветдеспесы);

И я использую php:

    $a = json_decode($_POST['vetDespesas']);
    var_dump($a[0]);

Моя консоль chrome печать:

объект( Стандартный класс)[2] общедоступный 'Datadespesa'=>строка '15/12/2015'(длина=10) общедоступный 'Descdespesa'=>строка 'teste1'(длина=6) общедоступный 'Бюджетдеспеса'=>строка '001 001 0E2R'(длина=12) общедоступный 'Valordespesa'=>строка '2133.33'(длина=7)

Как я могу получить доступ к этим данным?

Author: k0pernikus, 2015-12-16

1 answers

Вы должны превратить его в строку JSON перед отправкой на PHP:

vetDespesas = JSON.stringify(vetDespesas);

И чтобы получить объект в PHP-коде, вы должны использовать json_decode() :

$my_object = json_decode($_POST['vetDespesas']);

Вы можете получить доступ к атрибутам object(stdClass) с помощью ->, например:

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

Надеюсь, это поможет.

 1
Author: Zakaria Acharki, 2015-12-16 00:35:11