public static function printSafe($var)
    {
        if ($var instanceof Type) {
            return $var->toString();
        }
        if (is_object($var)) {
            if (method_exists($var, '__toString')) {
                return (string) $var;
            }

            return 'instance of ' . get_class($var);
        }
        if (is_array($var)) {
            return json_encode($var);
        }
        if ($var === '') {
            return '(empty string)';
        }
        if ($var === null) {
            return 'null';
        }
        if ($var === false) {
            return 'false';
        }
        if ($var === true) {
            return 'true';
        }
        if (is_string($var)) {
            return $var;
        }
        if (is_scalar($var)) {
            return (string) $var;
        }

        return gettype($var);
    }
public static function printSafe($var)
    {
        if ($var instanceof Type) {
            return $var->toString();
        }
        if (is_object($var)) {
            if (method_exists($var, '__toString')) {
                return (string) $var;
            }

            return 'instance of ' . get_class($var);
        }
        if (is_array($var)) {
            return json_encode($var);
        }
        if ($var === '') {
            return '(empty string)';
        }
        if ($var === null) {
            return 'null';
        }
        if ($var === false) {
            return 'false';
        }
        if ($var === true) {
            return 'true';
        }
        if (is_string($var)) {
            return $var;
        }
        if (is_scalar($var)) {
            return (string) $var;
        }

        return gettype($var);
    }
public static function printSafe ( $ var ) { if ( $ var instanceof Type ) { return $ var -> toString ( ) ; } if ( is_object ( $ var ) ) { if ( method_exists ( $ var , '__toString' ) ) { return ( string ) $ var ; } return 'instance of ' . get_class ( $ var ) ; } if ( is_array ( $ var ) ) { return json_encode ( $ var ) ; } if ( $ var === '' ) { return '(empty string)' ; } if ( $ var === null ) { return 'null' ; } if ( $ var === false ) { return 'false' ; } if ( $ var === true ) { return 'true' ; } if ( is_string ( $ var ) ) { return $ var ; } if ( is_scalar ( $ var ) ) { return ( string ) $ var ; } return gettype ( $ var ) ; }
@param Type|mixed $var

@return string
@param Type|mixed $var