public static function unescape($mixed, $quote_style = ENT_QUOTES, $charset = 'UTF-8')
    {

        if (is_string($mixed)) {
            $mixed = str_replace('&amp;', '&', $mixed);
            $mixed = str_replace('&#039;', '\'', $mixed);
            $mixed = str_replace('&quot;', '"', $mixed);
            $mixed = str_replace('&lt;', '<', $mixed);
            $mixed = str_replace('&gt;', '>', $mixed);
        } elseif (is_object($mixed) || is_array($mixed)) {
            foreach ($mixed as $k => &$v) {
                if ($v) {
                    if (is_object($mixed)) {
                        $mixed->$k = self::unescape($v);
                    } else {
                        $mixed[$k] = self::unescape($v);
                    }
                }
            }
        }

        return $mixed;
    }