如何在PHP中的函数返回值周围添加引号

时间:2014-01-12 03:30:25

标签: php json

这就是我现在所能使用的,但我需要引用数组idtotal下标的数字。我需要它看起来像这样:

{"id":"528", "total":"5280"}

这是我生成json数组的PHP代码:

    else if(strcmp($_GET['action'], 'update') == 0)
    {
        $cart = $_SESSION['cart'];
        $array = array(
            'id' => $cart->count(),
            'total' => $cart->total()
        );

        echo json_encode($array);
    }

目前的回声:

{"id":528, "total":5280}

我尝试通过执行$cart->count()$cart->total()手动添加'$cart->count()''$cart->total()'周围的引号,但它确实返回了引号所在的字符串。我需要引用idtotal的原因,因为当我尝试在javascript中显示它们时,它表示未定义。

编辑:

这是我的javascript代码:

$.ajax({
    type: 'GET',
    url: 'includes/actionhandler.php',
    data: { action: 'update'},
    success: function (data) {
        var json = jQuery.parseJSON(data);
        var obj = jQuery.toJSON(json)
        alert(obj['total']);
    },
});

3 个答案:

答案 0 :(得分:2)

$array = array(
  'id' => strval($cart->count()),
  'total' => strval($cart->total())
);

这是一种解决方法但可行:P

答案 1 :(得分:1)

你是用ajax输出的吗?如果是,请使用 -

将return dataType属性设置为json
            $.ajax({
               type: "POST",
               data: {},
               dataType:"json",
               url: '',
            });

答案 2 :(得分:-2)

$array = array(
            'id' => '"'.strval($cart->count()).'"',
            'total' => '"'.strval($cart->total()).'"'
        );