データをjson形式で返すURLを呼び出します。この出力からいくつかの変数を選ぶのが好きです。出力は次のとおりです。
{
"graph_property" : [ {
"name" : "calculation_method",
"value" : "Geo Mean"
}, {
"name" : "graph_type",
"value" : "TIME"
} ],
"measurement" : [ {
"id" : "1132282",
"alias" : "example.com"
"bucket_data" : [ {
"name" : "2013-JUN-20 11:23 AM",
"id" : 1,
"perf_data" : {
"value" : "4.878",
"unit" : "seconds"
},
"avail_data" : {
"value" : "100.00",
"unit" : "percent"
},
"data_count" : {
"value" : "1",
"unit" : "#"
}
}, {
"name" : "2013-JUN-20 11:28 AM",
"id" : 2,
"perf_data" : {
"value" : "-",
"unit" : "seconds"
},
"avail_data" : {
"value" : "-",
"unit" : "percent"
},
"data_count" : {
"value" : "-",
"unit" : "#"
}
}, {
"name" : "2013-JUN-20 11:33 AM",
"id" : 3,
"perf_data" : {
"value" : "-",
"unit" : "seconds"
},
"avail_data" : {
"value" : "-",
"unit" : "percent"
},
"data_count" : {
"value" : "-",
"unit" : "#"
}
} ],
"graph_option" : [ {
"name" : "perfwarning",
"value" : "-",
"unit" : "seconds"
}, {
"name" : "perfcritical",
"value" : "-",
"unit" : "seconds"
}, {
"name" : "availwarning",
"value" : "-",
"unit" : "percent"
}, {
"name" : "availcritical",
"value" : "-",
"unit" : "percent"
}, {
"name" : "bucketsize",
"value" : "300",
"unit" : "seconds"
}, {
"name" : "rows",
"value" : "3",
"unit" : "#"
}, {
"name" : "pagecomponent",
"value" : "User Time",
"unit" : "seconds"
}, {
"name" : "avg_perf",
"value" : "4.878",
"unit" : "seconds"
}, {
"name" : "avg_avail",
"value" : "100.00",
"unit" : "percent"
}, {
"name" : "total_datapoint_count",
"value" : "1",
"unit" : "#"
}, {
} ]
} ],
"link" : {
"type" : "application/json",
"href" : "http://api.keynote.com/",
"rel" : "slotmetadata"
}
}
私が興味を持っている値は次のとおりです。
"
name" : "2013-JUN-20 11:23 AM",
"value" : "4.878",
"name" : "2013-JUN-20 11:28 AM",
"value" : "-",
"name" : "2013-JUN-20 11:33 AM",
"value" : "-",
このようにしている理由は、Web サービス呼び出しが空の値を返すことがあるからです。この出力から、空の値を持たない最新の日付を選択し、空ではない名前と値を出力するのが好きです。
この json 出力から名前と値のフィールドを選択する簡単な方法はありますか?
私がする時
$data<-json_decode($resp)
print_r($data)
データの一部は次のとおりです。
[measurement] => Array
(
[0] => Array
(
[id] => 1132282
[alias] =>example.com
[bucket_data] => Array
(
[0] => Array
(
[name] => 2013-JUN-20 01:23 PM
[id] => 1
[perf_data] => Array
(
[value] => 3.074
[unit] => seconds
)
[avail_data] => Array
(
[value] => 100.00
[unit] => percent
)
[data_count] => Array
(
[value] => 1
[unit] => #
)
)
[1] => Array
(
[name] => 2013-JUN-20 01:28 PM
[id] => 2
[perf_data] => Array
(
[value] => 3.416
[unit] => seconds
)
[avail_data] => Array
(
[value] => 100.00
[unit] => percent
)
[data_count] => Array
(
[value] => 1
[unit] => #
)
)
[2] => Array
(
[name] => 2013-JUN-20 01:33 PM
[id] => 3
[perf_data] => Array
(
[value] => -
[unit] => seconds
)
[avail_data] => Array
(
[value] => -
[unit] => percent
)
[data_count] => Array
(
[value] => -
[unit] => #
)
)
)