2

我有一个数组,我试图将它传递给一个正在传递的 php 文件,但它将数组显示为一个字符串。如何将字符串转换为数组,以便可以在 php 中遍历它?这是我的代码:

jQuery

$('#add-child').click(function()
{
    var _attributes = [];
    $('#attributes input').each(function()
    {
        _attributes.push($(this).val());
    });
    $.post('../assets/hub.php',{'task':'add-child','parent':$('#parent-id').val(),'value':$('#child-value').val(),'attributes':JSON.stringify(_attributes)},function(callback)
    {
        console.log(callback);
    });
});

PHP

case 'add-child':
    $department = $_POST['parent'];
    $category   = $_POST['value'];        
    $attributes = $_POST['attributes'];
    print($department.' : '.$category.' : '.$attributes);
break;

电流输出

test1 : test2 : ["sdfg","34","vsdf"] 

** 编辑 **

我删除JSON.stringify()并添加了var_dump(),这是输出:

string(3) "114"
string(4) "asdf"
array(3) {
    [0]=>
    string(4) "asdf"
    [1]=>
    string(4) "ZVCX"
    [2]=>
    string(5) "asdfr"

}

4

2 回答 2

1
$attributes = json_decode($_POST['attributes']);

如果你想用逗号将数组重新加入 agian 那么

$attributes = implode(',' , json_decode($_POST['attributes']));
于 2012-11-18T21:40:11.047 回答
1

你根本不需要JSON.stringify,你检查一切都使用成功通过

var_dump($department, $category, $attributes);

不是pring_rwith 连接

于 2012-11-18T21:44:21.250 回答