phpunicodeutf-8strtr

How do I do a strtr on UTF-8 in PHP?


I'm looking for a UTF-8 compatible strtr for PHP.


Solution

  • function strtr_utf8($str, $from, $to) {
        $keys = array();
        $values = array();
        preg_match_all('/./u', $from, $keys);
        preg_match_all('/./u', $to, $values);
        $mapping = array_combine($keys[0], $values[0]);
        return strtr($str, $mapping);
    }