doesn't work '/\f/' ); $replace = array( '\\\\\\', '\\$', '\\t', '\\r', '\\n', // '\\b', '\\f', ); $string = preg_replace($special, $replace, $string); return $string; } // Requires an array public static function renderArray($array) { $data = array(); foreach ($array as $entry) { if ($entry instanceof IcingaConfigRenderer) { // $data[] = $entry; $data[] = 'INVALID_ARRAY_MEMBER'; } else { $data[] = self::renderString($entry); } } return implode(', ', $data); } public static function renderDictionary($dictionary) { return 'INVALID_DICTIONARY'; } public static function renderExpression($string) { return 'INVALID_EXPRESSION'; } public static function alreadyRendered($string) { return new IcingaConfigRendered($string); } public static function renderInterval($interval) { if ($interval % 60 === 0) { return $interval / 60; } else { return sprintf('%.2F', $interval); } } }