diff --git a/include/class.variable.php b/include/class.variable.php index 32704a909081e8076e71b5a82b29beb8e4bb9aa9..233c9fc18696886460991b35bf3dba18701762cc 100644 --- a/include/class.variable.php +++ b/include/class.variable.php @@ -63,8 +63,12 @@ class VariableReplacer { if(!$obj) return ""; - if (!$var && method_exists($obj, 'asVar')) //XXX: to_string? - return call_user_func(array($obj, 'asVar')); + if (!$var) { + if (method_exists($obj, 'asVar')) + return call_user_func(array($obj, 'asVar')); + elseif (method_exists($obj, '__toString')) + return (string) $obj; + } list($v, $part) = explode('.', $var, 2); if ($v && is_callable(array($obj, 'get'.ucfirst($v)))) {