php file_get_contents()获取数据

时间:2016-06-24 13:06:54

标签: php url echo file-get-contents

我有这段代码:

$url = "http://steamcommunity.com/market/priceoverview/?currency=3&appid=730&market_hash_name=".$name;
$url = file_get_contents($url);
echo $url;

这是

的输出
{
    "success":true,
    "lowest_price":"4,20\u20ac",
    "volume":"4,855",
    "median_price":"4,16\u20ac"
}

我想要lowest_price。我该如何选择呢?

3 个答案:

答案 0 :(得分:1)

您获得的输出称为 JSON字符串。您可以使用json_decode()将其解析为数组。

<?php
     $JSON_STRING="{"success":true,"lowest_price":"4,20\u20ac","volume":"4,855","median_price":"4,16\u20ac"}";
     $array=json_decode($JSON_STRING,true);

上面的代码将Json String转换为数组,您可以像这样访问lowest_price(就像访问数组中的任何值一样),

<?php
    echo $array["lowest_price"];

json_decode()中的第二个参数表示将JSON字符串转换为数组,默认情况下它返回 PHP对象。

参考:http://php.net/manual/en/function.json-decode.php

答案 1 :(得分:1)

尝试

    $url = "http://steamcommunity.com/market/priceoverview/?currency=3&appid=730&market_hash_name=".$name;
    $url = file_get_contents($url);
    echo $url;
    $data = json_decode($url, true);
    $lowest_price = $data['lowest_price'];
    echo $lowest_price;

答案 2 :(得分:0)

我将如何做到这一点:

$url = "http://steamcommunity.com/market/priceoverview/?currency=3&appid=730&market_hash_name=".$name;
$data = file_get_contents($url);
$json = json_decode($data);
$lowest_price = $json->{'lowest_price'};
echo $lowest_price;