0
$url2 = "http://www.website.com/test.json";
$json2 = file_get_contents($url2);
$data2 = json_decode($json2);

foreach($data2 as $mydata2) {

    $product_discount = $mydata2->applied_discounts;
    var_dump($product_discount);
}

这是返回:

array(1) {
    [0]=> object(stdClass)#2 (2) {
        ["id"]=> string(6) "coupon"
        ["amount"]=> float(9.99)
    }
}

我只想返回“9.99”的金额

我试过 $product_discount[0]['amount'],但这似乎不对??

4

3 回答 3

6

它是一个对象,因此您需要以下语法:

$product_discount = $mydata2->applied_discounts[0]->amount;

但是,如果您想要一个数组,则可以将json_decode()的第二个参数设置为TRUE

$data2 = json_decode($json2, TRUE);
于 2013-10-14T20:03:58.143 回答
3

你想这样做:

$product_discount = $mydata2->applied_discounts[0]->amount;
于 2013-10-14T20:04:37.310 回答
0

它是一个对象,而不是一个数组。尝试...

$product_discount[0]->amount
于 2013-10-14T20:05:42.200 回答