if (strlen($ret)) { $upvals = explode("\n", $ret); }
ob_end_clean();
}
- $walkfunc = create_function('&$val,$key', '$val = is_numeric(trim($val))?trim($val):"U";');
- array_walk($upvals, $walkfunc);
}
else {
foreach ($this->rrd_fields as $ds) {
}
}
else { $val = null; }
- $upvals[] = is_null($val)?'U':$val;
}
}
if (in_array('L', $upvals)) {
// for at least one value, we need to set the same as the last recorded value
- $lastvals = $this->fetch();
+ $fvals = $this->fetch();
+ $rowids = array_shift($fvals);
+ $lastvals = array_shift($fvals);
foreach (array_keys($upvals, 'L') as $akey) {
- $upvals[$akey] = $lastvals[$akey];
+ $upvals[$akey] = $lastvals[$rowids[$akey]];
}
}
+ $walkfunc = create_function('&$val,$key', '$val = is_numeric(trim($val))?trim($val):"U";');
+ array_walk($upvals, $walkfunc);
$return = null;
if (count($upvals)) {
$update_cmd = 'rrdtool update '.$this->rrd_file.' N:'.implode(':', $upvals);
foreach ($rows as $row) {
if (strlen(trim($row))) {
$rvals = preg_split('/\s+/', $row);
- $rtime = array_shift($rvals);
+ $rtime = str_replace(':', '', array_shift($rvals));
$rv_array = array();
foreach ($rvals as $key=>$rval) {
$rv_array[$fields[$key]] = ($rval=='nan')?null:floatval($rval);