JpnForPhp\Helper\Helper::removeMacrons PHP Method

removeMacrons() public static method

Based on Wordpress remove_accents().
public static removeMacrons ( string $str ) : string
$str string The input string.
return string Cleaned string.
    public static function removeMacrons($str)
    {
        if (!preg_match('/[\\x80-\\xff]/', $str)) {
            return $str;
        }
        $chars = array(chr(195) . chr(130) => 'A', chr(195) . chr(162) => 'a', chr(195) . chr(142) => 'I', chr(195) . chr(174) => 'i', chr(195) . chr(155) => 'U', chr(195) . chr(187) => 'u', chr(195) . chr(138) => 'E', chr(195) . chr(170) => 'e', chr(195) . chr(148) => 'O', chr(195) . chr(180) => 'o', chr(196) . chr(128) => 'A', chr(196) . chr(129) => 'a', chr(196) . chr(170) => 'I', chr(196) . chr(171) => 'i', chr(197) . chr(170) => 'U', chr(197) . chr(171) => 'u', chr(196) . chr(146) => 'E', chr(196) . chr(147) => 'e', chr(197) . chr(140) => 'O', chr(197) . chr(141) => 'o');
        return strtr($str, $chars);
    }

Usage Example

Ejemplo n.º 1
0
 public function testRemoveMacronsFromAnyMacrons()
 {
     $result = Helper::removeMacrons('ŌōŪūĀāĪīôÔûÛâÂîÎêÊ');
     $this->assertEquals('OoUuAaIioOuUaAiIeE', $result);
 }