@ 2018-03-09T02:35:50Z <?php
$string = 'Öé';
$chars = [
// Decompositions for Latin-1 Supplement
chr(194) . chr(170) => 'a', chr(194) . chr(186) => 'o',
chr(195) . chr(128) => 'A', chr(195) . chr(129) => 'A',
chr(195) . chr(130) => 'A', chr(195) . chr(131) => 'A',
chr(195) . chr(132) => 'A', chr(195) . chr(133) => 'A',
chr(195) . chr(134) => 'AE', chr(195) . chr(135) => 'C',
chr(195) . chr(136) => 'E', chr(195) . chr(137) => 'E',
chr(195) . chr(138) => 'E', chr(195) . chr(139) => 'E',
chr(195) . chr(140) => 'I', chr(195) . chr(141) => 'I',
chr(195) . chr(142) => 'I', chr(195) . chr(143) => 'I',
chr(195) . chr(144) => 'D', chr(195) . chr(145) => 'N',
chr(195) . chr(146) => 'O', chr(195) . chr(147) => 'O',
chr(195) . chr(148) => 'O', chr(195) . chr(149) => 'O',
chr(195) . chr(150) => 'O', chr(195) . chr(153) => 'U',
chr(195) . chr(154) => 'U', chr(195) . chr(155) => 'U',
chr(195) . chr(156) => 'U', chr(195) . chr(157) => 'Y',
chr(195) . chr(158) => 'TH', chr(195) . chr(159) => 's',
chr(195) . chr(160) => 'a', chr(195) . chr(161) => 'a',
chr(195) . chr(162) => 'a', chr(195) . chr(163) => 'a',
chr(195) . chr(164) => 'a', chr(195) . chr(165) => 'a',
chr(195) . chr(166) => 'ae', chr(195) . chr(167) => 'c',
chr(195) . chr(168) => 'e', chr(195) . chr(169) => 'e',
chr(195) . chr(170) => 'e', chr(195) . chr(171) => 'e',
chr(195) . chr(172) => 'i', chr(195) . chr(173) => 'i',
chr(195) . chr(174) => 'i', chr(195) . chr(175) => 'i',
chr(195) . chr(176) => 'd', chr(195) . chr(177) => 'n',
chr(195) . chr(178) => 'o', chr(195) . chr(179) => 'o',
chr(195) . chr(180) => 'o', chr(195) . chr(181) => 'o',
chr(195) . chr(182) => 'o', chr(195) . chr(184) => 'o',
chr(195) . chr(185) => 'u', chr(195) . chr(186) => 'u',
chr(195) . chr(187) => 'u', chr(195) . chr(188) => 'u',
chr(195) . chr(189) => 'y', chr(195) . chr(190) => 'th',
chr(195) . chr(191) => 'y', chr(195) . chr(152) => 'O',
// Decompositions for Latin Extended-A
chr(196) . chr(128) => 'A', chr(196) . chr(129) => 'a',
chr(196) . chr(130) => 'A', chr(196) . chr(131) => 'a',
chr(196) . chr(132) => 'A', chr(196) . chr(133) => 'a',
chr(196) . chr(134) => 'C', chr(196) . chr(135) => 'c',
chr(196) . chr(136) => 'C', chr(196) . chr(137) => 'c',
chr(196) . chr(138) => 'C', chr(196) . chr(139) => 'c',
chr(196) . chr(140) => 'C', chr(196) . chr(141) => 'c',
chr(196) . chr(142) => 'D', chr(196) . chr(143) => 'd',
chr(196) . chr(144) => 'D', chr(196) . chr(145) => 'd',
chr(196) . chr(146) => 'E', chr(196) . chr(147) => 'e',
chr(196) . chr(148) => 'E', chr(196) . chr(149) => 'e',
chr(196) . chr(150) => 'E', chr(196) . chr(151) => 'e',
chr(196) . chr(152) => 'E', chr(196) . chr(153) => 'e',
chr(196) . chr(154) => 'E', chr(196) . chr(155) => 'e',
chr(196) . chr(156) => 'G', chr(196) . chr(157) => 'g',
chr(196) . chr(158) => 'G', chr(196) . chr(159) => 'g',
chr(196) . chr(160) => 'G', chr(196) . chr(161) => 'g',
chr(196) . chr(162) => 'G', chr(196) . chr(163) => 'g',
chr(196) . chr(164) => 'H', chr(196) . chr(165) => 'h',
chr(196) . chr(166) => 'H', chr(196) . chr(167) => 'h',
chr(196) . chr(168) => 'I', chr(196) . chr(169) => 'i',
chr(196) . chr(170) => 'I', chr(196) . chr(171) => 'i',
chr(196) . chr(172) => 'I', chr(196) . chr(173) => 'i',
chr(196) . chr(174) => 'I', chr(196) . chr(175) => 'i',
chr(196) . chr(176) => 'I', chr(196) . chr(177) => 'i',
chr(196) . chr(178) => 'IJ', chr(196) . chr(179) => 'ij',
chr(196) . chr(180) => 'J', chr(196) . chr(181) => 'j',
chr(196) . chr(182) => 'K', chr(196) . chr(183) => 'k',
chr(196) . chr(184) => 'k', chr(196) . chr(185) => 'L',
chr(196) . chr(186) => 'l', chr(196) . chr(187) => 'L',
chr(196) . chr(188) => 'l', chr(196) . chr(189) => 'L',
chr(196) . chr(190) => 'l', chr(196) . chr(191) => 'L',
chr(197) . chr(128) => 'l', chr(197) . chr(129) => 'L',
chr(197) . chr(130) => 'l', chr(197) . chr(131) => 'N',
chr(197) . chr(132) => 'n', chr(197) . chr(133) => 'N',
chr(197) . chr(134) => 'n', chr(197) . chr(135) => 'N',
chr(197) . chr(136) => 'n', chr(197) . chr(137) => 'N',
chr(197) . chr(138) => 'n', chr(197) . chr(139) => 'N',
chr(197) . chr(140) => 'O', chr(197) . chr(141) => 'o',
chr(197) . chr(142) => 'O', chr(197) . chr(143) => 'o',
chr(197) . chr(144) => 'O', chr(197) . chr(145) => 'o',
chr(197) . chr(146) => 'OE', chr(197) . chr(147) => 'oe',
chr(197) . chr(148) => 'R', chr(197) . chr(149) => 'r',
chr(197) . chr(150) => 'R', chr(197) . chr(151) => 'r',
chr(197) . chr(152) => 'R', chr(197) . chr(153) => 'r',
chr(197) . chr(154) => 'S', chr(197) . chr(155) => 's',
chr(197) . chr(156) => 'S', chr(197) . chr(157) => 's',
chr(197) . chr(158) => 'S', chr(197) . chr(159) => 's',
chr(197) . chr(160) => 'S', chr(197) . chr(161) => 's',
chr(197) . chr(162) => 'T', chr(197) . chr(163) => 't',
chr(197) . chr(164) => 'T', chr(197) . chr(165) => 't',
chr(197) . chr(166) => 'T', chr(197) . chr(167) => 't',
chr(197) . chr(168) => 'U', chr(197) . chr(169) => 'u',
chr(197) . chr(170) => 'U', chr(197) . chr(171) => 'u',
chr(197) . chr(172) => 'U', chr(197) . chr(173) => 'u',
chr(197) . chr(174) => 'U', chr(197) . chr(175) => 'u',
chr(197) . chr(176) => 'U', chr(197) . chr(177) => 'u',
chr(197) . chr(178) => 'U', chr(197) . chr(179) => 'u',
chr(197) . chr(180) => 'W', chr(197) . chr(181) => 'w',
chr(197) . chr(182) => 'Y', chr(197) . chr(183) => 'y',
chr(197) . chr(184) => 'Y', chr(197) . chr(185) => 'Z',
chr(197) . chr(186) => 'z', chr(197) . chr(187) => 'Z',
chr(197) . chr(188) => 'z', chr(197) . chr(189) => 'Z',
chr(197) . chr(190) => 'z', chr(197) . chr(191) => 's',
// Decompositions for Latin Extended-B
chr(200) . chr(152) => 'S', chr(200) . chr(153) => 's',
chr(200) . chr(154) => 'T', chr(200) . chr(155) => 't',
// Euro Sign
chr(226) . chr(130) . chr(172) => 'E',
// GBP (Pound) Sign
chr(194) . chr(163) => '',
// Vowels with diacritic (Vietnamese)
// unmarked
chr(198) . chr(160) => 'O', chr(198) . chr(161) => 'o',
chr(198) . chr(175) => 'U', chr(198) . chr(176) => 'u',
// grave accent
chr(225) . chr(186) . chr(166) => 'A', chr(225) . chr(186) . chr(167) => 'a',
chr(225) . chr(186) . chr(176) => 'A', chr(225) . chr(186) . chr(177) => 'a',
chr(225) . chr(187) . chr(128) => 'E', chr(225) . chr(187) . chr(129) => 'e',
chr(225) . chr(187) . chr(146) => 'O', chr(225) . chr(187) . chr(147) => 'o',
chr(225) . chr(187) . chr(156) => 'O', chr(225) . chr(187) . chr(157) => 'o',
chr(225) . chr(187) . chr(170) => 'U', chr(225) . chr(187) . chr(171) => 'u',
chr(225) . chr(187) . chr(178) => 'Y', chr(225) . chr(187) . chr(179) => 'y',
// hook
chr(225) . chr(186) . chr(162) => 'A', chr(225) . chr(186) . chr(163) => 'a',
chr(225) . chr(186) . chr(168) => 'A', chr(225) . chr(186) . chr(169) => 'a',
chr(225) . chr(186) . chr(178) => 'A', chr(225) . chr(186) . chr(179) => 'a',
chr(225) . chr(186) . chr(186) => 'E', chr(225) . chr(186) . chr(187) => 'e',
chr(225) . chr(187) . chr(130) => 'E', chr(225) . chr(187) . chr(131) => 'e',
chr(225) . chr(187) . chr(136) => 'I', chr(225) . chr(187) . chr(137) => 'i',
chr(225) . chr(187) . chr(142) => 'O', chr(225) . chr(187) . chr(143) => 'o',
chr(225) . chr(187) . chr(148) => 'O', chr(225) . chr(187) . chr(149) => 'o',
chr(225) . chr(187) . chr(158) => 'O', chr(225) . chr(187) . chr(159) => 'o',
chr(225) . chr(187) . chr(166) => 'U', chr(225) . chr(187) . chr(167) => 'u',
chr(225) . chr(187) . chr(172) => 'U', chr(225) . chr(187) . chr(173) => 'u',
chr(225) . chr(187) . chr(182) => 'Y', chr(225) . chr(187) . chr(183) => 'y',
// tilde
chr(225) . chr(186) . chr(170) => 'A', chr(225) . chr(186) . chr(171) => 'a',
chr(225) . chr(186) . chr(180) => 'A', chr(225) . chr(186) . chr(181) => 'a',
chr(225) . chr(186) . chr(188) => 'E', chr(225) . chr(186) . chr(189) => 'e',
chr(225) . chr(187) . chr(132) => 'E', chr(225) . chr(187) . chr(133) => 'e',
chr(225) . chr(187) . chr(150) => 'O', chr(225) . chr(187) . chr(151) => 'o',
chr(225) . chr(187) . chr(160) => 'O', chr(225) . chr(187) . chr(161) => 'o',
chr(225) . chr(187) . chr(174) => 'U', chr(225) . chr(187) . chr(175) => 'u',
chr(225) . chr(187) . chr(184) => 'Y', chr(225) . chr(187) . chr(185) => 'y',
// acute accent
chr(225) . chr(186) . chr(164) => 'A', chr(225) . chr(186) . chr(165) => 'a',
chr(225) . chr(186) . chr(174) => 'A', chr(225) . chr(186) . chr(175) => 'a',
chr(225) . chr(186) . chr(190) => 'E', chr(225) . chr(186) . chr(191) => 'e',
chr(225) . chr(187) . chr(144) => 'O', chr(225) . chr(187) . chr(145) => 'o',
chr(225) . chr(187) . chr(154) => 'O', chr(225) . chr(187) . chr(155) => 'o',
chr(225) . chr(187) . chr(168) => 'U', chr(225) . chr(187) . chr(169) => 'u',
// dot below
chr(225) . chr(186) . chr(160) => 'A', chr(225) . chr(186) . chr(161) => 'a',
chr(225) . chr(186) . chr(172) => 'A', chr(225) . chr(186) . chr(173) => 'a',
chr(225) . chr(186) . chr(182) => 'A', chr(225) . chr(186) . chr(183) => 'a',
chr(225) . chr(186) . chr(184) => 'E', chr(225) . chr(186) . chr(185) => 'e',
chr(225) . chr(187) . chr(134) => 'E', chr(225) . chr(187) . chr(135) => 'e',
chr(225) . chr(187) . chr(138) => 'I', chr(225) . chr(187) . chr(139) => 'i',
chr(225) . chr(187) . chr(140) => 'O', chr(225) . chr(187) . chr(141) => 'o',
chr(225) . chr(187) . chr(152) => 'O', chr(225) . chr(187) . chr(153) => 'o',
chr(225) . chr(187) . chr(162) => 'O', chr(225) . chr(187) . chr(163) => 'o',
chr(225) . chr(187) . chr(164) => 'U', chr(225) . chr(187) . chr(165) => 'u',
chr(225) . chr(187) . chr(176) => 'U', chr(225) . chr(187) . chr(177) => 'u',
chr(225) . chr(187) . chr(180) => 'Y', chr(225) . chr(187) . chr(181) => 'y',
// Vowels with diacritic (Chinese, Hanyu Pinyin)
chr(201) . chr(145) => 'a',
// macron
chr(199) . chr(149) => 'U', chr(199) . chr(150) => 'u',
// acute accent
chr(199) . chr(151) => 'U', chr(199) . chr(152) => 'u',
// caron
chr(199) . chr(141) => 'A', chr(199) . chr(142) => 'a',
chr(199) . chr(143) => 'I', chr(199) . chr(144) => 'i',
chr(199) . chr(145) => 'O', chr(199) . chr(146) => 'o',
chr(199) . chr(147) => 'U', chr(199) . chr(148) => 'u',
chr(199) . chr(153) => 'U', chr(199) . chr(154) => 'u',
// grave accent
chr(199) . chr(155) => 'U', chr(199) . chr(156) => 'u',
];
$string = strtr($string, $chars);
var_dump($string);
Enable javascript to submit You have javascript disabled. You will not be able to edit any code.
Here you find the average performance (time & memory) of each version. A grayed out version indicates it didn't complete successfully (based on exit-code).
Version System time (s) User time (s) Memory (MiB) 8.3.6 0.009 0.009 18.25 8.3.5 0.012 0.009 16.29 8.3.4 0.009 0.006 18.92 8.3.3 0.012 0.003 18.96 8.3.2 0.004 0.004 22.14 8.3.1 0.003 0.006 23.66 8.3.0 0.007 0.007 23.61 8.2.18 0.014 0.010 16.70 8.2.17 0.000 0.018 22.96 8.2.16 0.015 0.000 20.77 8.2.15 0.003 0.006 24.18 8.2.14 0.003 0.005 24.66 8.2.13 0.004 0.004 26.16 8.2.12 0.007 0.004 19.39 8.2.11 0.003 0.006 22.26 8.2.10 0.009 0.006 17.97 8.2.9 0.005 0.003 19.60 8.2.8 0.000 0.010 18.22 8.2.7 0.006 0.003 18.05 8.2.6 0.006 0.003 17.75 8.2.5 0.004 0.004 18.41 8.2.4 0.003 0.005 20.70 8.2.3 0.007 0.000 20.76 8.2.2 0.008 0.000 18.31 8.2.1 0.003 0.006 18.39 8.2.0 0.004 0.004 18.39 8.1.28 0.018 0.000 25.92 8.1.27 0.000 0.008 24.66 8.1.26 0.008 0.000 26.35 8.1.25 0.008 0.000 28.09 8.1.24 0.003 0.007 23.83 8.1.23 0.006 0.006 21.13 8.1.22 0.000 0.009 17.93 8.1.21 0.003 0.006 18.87 8.1.20 0.006 0.003 17.48 8.1.19 0.005 0.005 17.35 8.1.18 0.004 0.004 18.10 8.1.17 0.009 0.000 18.84 8.1.16 0.000 0.008 18.99 8.1.15 0.005 0.002 20.48 8.1.14 0.004 0.004 17.77 8.1.13 0.000 0.009 19.33 8.1.12 0.000 0.010 17.64 8.1.11 0.000 0.007 17.66 8.1.10 0.000 0.008 17.63 8.1.9 0.003 0.005 17.56 8.1.8 0.007 0.004 17.69 8.1.7 0.000 0.009 17.70 8.1.6 0.004 0.004 17.77 8.1.5 0.009 0.003 17.70 8.1.4 0.000 0.008 17.71 8.1.3 0.006 0.003 17.85 8.1.2 0.003 0.005 17.80 8.1.1 0.000 0.009 17.78 8.1.0 0.000 0.009 17.56 8.0.30 0.004 0.004 20.14 8.0.29 0.008 0.000 16.88 8.0.28 0.003 0.005 18.64 8.0.27 0.000 0.007 17.46 8.0.26 0.000 0.008 17.02 8.0.25 0.003 0.007 17.11 8.0.24 0.000 0.007 17.19 8.0.23 0.004 0.004 17.14 8.0.22 0.003 0.003 17.05 8.0.21 0.000 0.007 17.13 8.0.20 0.005 0.002 17.19 8.0.19 0.003 0.005 17.18 8.0.18 0.000 0.007 17.12 8.0.17 0.009 0.000 16.99 8.0.16 0.004 0.004 17.13 8.0.15 0.007 0.000 17.00 8.0.14 0.004 0.004 16.94 8.0.13 0.000 0.006 13.45 8.0.12 0.004 0.004 16.98 8.0.11 0.006 0.003 17.03 8.0.10 0.000 0.008 17.04 8.0.9 0.005 0.003 17.00 8.0.8 0.005 0.015 17.11 8.0.7 0.000 0.008 17.02 8.0.6 0.006 0.003 17.08 8.0.5 0.004 0.004 17.03 8.0.3 0.009 0.010 17.20 8.0.2 0.011 0.008 17.42 8.0.1 0.000 0.008 17.01 8.0.0 0.016 0.006 16.92 7.4.33 0.000 0.006 15.55 7.4.32 0.007 0.000 16.76 7.4.30 0.003 0.003 16.73 7.4.29 0.000 0.008 16.68 7.4.28 0.003 0.006 16.78 7.4.27 0.004 0.003 16.75 7.4.26 0.007 0.004 16.55 7.4.25 0.004 0.004 16.81 7.4.24 0.000 0.008 16.72 7.4.23 0.003 0.006 16.70 7.4.22 0.004 0.004 16.69 7.4.21 0.003 0.011 16.83 7.4.20 0.004 0.004 16.86 7.4.16 0.005 0.012 16.66 7.4.14 0.007 0.014 17.86 7.4.13 0.011 0.008 16.64 7.4.12 0.012 0.008 16.62 7.4.11 0.018 0.000 16.48 7.4.10 0.009 0.009 16.47 7.4.9 0.012 0.006 16.86 7.4.8 0.013 0.013 19.39 7.4.7 0.009 0.017 16.64 7.4.6 0.012 0.006 16.55 7.4.5 0.010 0.007 16.48 7.4.4 0.009 0.012 16.77 7.4.0 0.009 0.009 15.24 7.3.33 0.003 0.003 13.18 7.3.32 0.007 0.000 13.20 7.3.31 0.004 0.004 16.43 7.3.30 0.000 0.008 16.31 7.3.29 0.011 0.006 16.44 7.3.28 0.010 0.008 16.47 7.3.26 0.017 0.015 16.62 7.3.25 0.014 0.005 16.57 7.3.24 0.007 0.011 16.55 7.3.23 0.013 0.003 16.50 7.3.21 0.014 0.010 16.54 7.3.20 0.006 0.010 16.80 7.3.19 0.011 0.006 16.66 7.3.18 0.007 0.011 16.41 7.3.17 0.006 0.012 16.57 7.3.16 0.010 0.006 16.60 7.3.12 0.012 0.003 14.93 7.3.11 0.004 0.015 14.94 7.3.10 0.000 0.016 15.14 7.3.9 0.009 0.006 15.04 7.3.8 0.003 0.013 14.75 7.3.7 0.006 0.006 15.08 7.3.6 0.007 0.007 14.92 7.3.5 0.006 0.003 15.05 7.3.4 0.011 0.007 15.15 7.3.3 0.003 0.014 15.08 7.3.2 0.004 0.015 16.58 7.3.1 0.004 0.011 16.21 7.3.0 0.010 0.003 16.66 7.2.33 0.009 0.009 16.65 7.2.32 0.000 0.018 16.69 7.2.31 0.007 0.014 16.73 7.2.30 0.006 0.012 16.85 7.2.29 0.003 0.013 16.72 7.2.25 0.007 0.014 15.38 7.2.24 0.010 0.010 15.18 7.2.23 0.008 0.008 15.16 7.2.22 0.007 0.006 14.95 7.2.21 0.004 0.011 15.36 7.2.20 0.009 0.006 15.15 7.2.19 0.010 0.000 15.03 7.2.18 0.004 0.011 15.01 7.2.17 0.006 0.012 15.29 7.2.6 0.004 0.009 16.73 7.2.3 0.009 0.012 19.62 7.2.2 0.010 0.013 19.92 7.2.1 0.016 0.010 19.94 7.2.0 0.008 0.017 19.84 7.1.33 0.003 0.010 15.43 7.1.32 0.000 0.015 15.63 7.1.31 0.003 0.010 15.80 7.1.30 0.004 0.008 15.43 7.1.29 0.003 0.013 15.71 7.1.28 0.003 0.017 15.89 7.1.27 0.010 0.010 15.76 7.1.26 0.000 0.010 15.53 7.1.20 0.004 0.008 15.59 7.1.15 0.008 0.016 18.84 7.1.14 0.009 0.013 18.61 7.1.13 0.012 0.012 18.89 7.1.12 0.007 0.018 18.53 7.1.11 0.007 0.017 18.02 7.1.10 0.011 0.012 17.86 7.1.9 0.007 0.014 18.05 7.1.8 0.008 0.016 18.04 7.1.7 0.006 0.016 17.00 7.1.6 0.032 0.018 35.00 7.1.5 0.029 0.018 34.74 7.1.4 0.034 0.017 34.43 7.1.3 0.029 0.022 34.49 7.1.2 0.030 0.022 34.38 7.1.1 0.010 0.008 16.52 7.1.0 0.012 0.010 16.72
preferences:dark mode live preview
55.24 ms | 401 KiB | 5 Q