$hostid = json_decode($zabbix->getHost(),true);
var_dump($data);
foreach ($hostid['result'] as $key => $value) {
// var_dump($value['name']);
// var_dump($data['vmlist']);
if($data['vmlist'] == $value['name'])
{
var_dump($zabbix->linkHost($value['hostid'],$temptid));
}
}
var_dump($data);
foreach ($hostid['result'] as $key => $value) {
// var_dump($value['name']);
// var_dump($data['vmlist']);
if($data['vmlist'] == $value['name'])
{
var_dump($zabbix->linkHost($value['hostid'],$temptid));
}
}
print_r($hostid);
print_r($data);
贴出结果
var_dump($data['vmlist']); array(1) { [0]=> string(5) "host3" } array(1) { [0]=> string(5) "host3" } array(1) { [0]=> string(5) "host3" }
我估计是不是循环以后出了问题
print_r($hostid);
print_r($data);
的结果,你却给出残缺的 var_dump 的结果我看不到全貌,怎么帮你?
$hostid Array ( [jsonrpc] => 2.0 [result] => Array ( [0] => Array ( [hostid] => 10128 [name] => host1 ) [1] => Array ( [hostid] => 10129 [name] => host2 ) [2] => Array ( [hostid] => 10130 [name] => host3 ) ) [id] => 0 )
改为
if($data['vmlist'][0] == $value['name'])
这个应该是比较数组的元素
$data; [vmlist] => Array ( [0] => host3 ) )改为if($data['vmlist'][0] == $value['name'])
in_array来判断。