Передать массив объектов jQuery в PHP с помощью JSON - PullRequest
2 голосов
/ 25 марта 2011

Как я могу получить доступ к значениям "code" и "type" в PHP после прохождения массива?
Кстати, я использую плагин "jquery-json".Есть ли способ сделать это без каких-либо плагинов?

jQuery:

$(function(){

    function product(code, type) {

        return {
            code: code,
            type: type
        }

    }

    var products = [];

    products.push(product("333", "Product one"), product("444", "Second product"));

    var jsonProducts = $.toJSON(products); 

    $.post(
        "php/process.php",
        {products: jsonProducts},
        function(data){
            $("#result").html(data);
        }
    );


});

PHP:

<?php 

$products = json_decode($_POST["products"], true);

foreach ($products as $product){
    echo $product;
}

?>

Ответы [ 2 ]

2 голосов
/ 25 марта 2011

Каждое из ваших смещений массива является базовым объектом.

foreach ($products as $product)
{
    echo $product->code;
    echo $product->type;
}

Я бы посоветовал вам перечитать примеры на json_decode, чтобы лучше понять, какPHP переводит JSON в типы PHP

0 голосов
/ 25 марта 2011

Вы должны иметь возможность просто сделать $product->code и $product->type в цикле foreach.

Кстати, если вы хотите напечатать структуру массива для проверки форматирования, вы можете использовать print_r .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...