的zabbix JSON得到阵列,而不JSON对象
问题描述:
我有以下代码从ZabbixAPI阅读项目名称:的zabbix JSON得到阵列,而不JSON对象
try {
// connect to Zabbix-API
$api = new ZabbixApi($api_url, $username, $password);
$params = array( 'groupids' => '2 ',
'real_items' =>TRUE,
'monitored_items' =>TRUE,
'search' => array('name' => 'Disk root used p'),
'selectFunctions' => 'extend',
'output' => 'name',
'sortfield' => 'name',
'lastvalue' => 'value'
);
$items = $api->itemGet($params); // get data from api
echo serialize($items);
foreach($items as $item) { // loop through the returned data
echo "<td>".$item."</td>";
}
} catch(Exception $e) {
// Exception in ZabbixApi catched
echo $e->getMessage();
}
有了,我得到这个输出为每个项目:
stdClass Object ([itemid] => 81351 [name] => Disk root used p)
但我只需要该项目而不是JSON对象的“名”,所以输出就像一个数组:itemname1, itemname2....
答
你可以做到以下几点:
$names = array();
foreach($items as $item) { // loop through the returned data
$names[] = $item->name;
}
$ names数组将是项目名称数组。
谢谢你对我完美的工作。 :) – julien