public static function escapeStr($inp) {

        if (is_array($inp)) {
            return array_map(__METHOD__, $inp); // use call back to itself to replace when it is array
        }
        if (!empty($inp) && is_string($inp)) {
            $badchr = array(
                "\xc2", // prefix 1
                "\x80", // prefix 2
                "\x98", // single quote opening
                "\x99", // single quote closing
                "\x8c", // double quote opening
                "\x9d", // double quote closing
                "\x96", // En dash
                "\x97"  // Em dash
            );
            $goodchr = array('', '', '\'', '\'', '"', '"', '-', '-');
            $inp = str_replace($badchr, $goodchr, $inp);
        }
        return $inp;
    }