3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php var_dump(levenshtein(utf8_to_extended_ascii('прив'), utf8_to_extended_ascii('привет'))); function utf8_to_extended_ascii($str, &$map) { // find all multibyte characters (cf. utf-8 encoding specs) $matches = array(); if (!preg_match_all('/[\xC0-\xF7][\x80-\xBF]+/', $str, $matches)) return $str; // plain ascii string // update the encoding map with the characters not already met foreach ($matches[0] as $mbc) if (!isset($map[$mbc])) $map[$mbc] = chr(128 + count($map)); // finally remap non-ascii characters return strtr($str, $map); }
Output for 7.1.0
Fatal error: Uncaught ArgumentCountError: Too few arguments to function utf8_to_extended_ascii(), 1 passed in /in/jeZhi on line 3 and exactly 2 expected in /in/jeZhi:5 Stack trace: #0 /in/jeZhi(3): utf8_to_extended_ascii('\xD0\xBF\xD1\x80\xD0\xB8\xD0\xB2') #1 {main} thrown in /in/jeZhi on line 5
Process exited with code 255.
Output for 5.1.0 - 5.6.28, 7.0.0 - 7.0.14
Warning: Missing argument 2 for utf8_to_extended_ascii(), called in /in/jeZhi on line 3 and defined in /in/jeZhi on line 5 Notice: Undefined variable: map in /in/jeZhi on line 15 Warning: Missing argument 2 for utf8_to_extended_ascii(), called in /in/jeZhi on line 3 and defined in /in/jeZhi on line 5 Notice: Undefined variable: map in /in/jeZhi on line 15 int(2)
Output for hhvm-3.10.0 - 3.12.0
Warning: utf8_to_extended_ascii() expects exactly 2 parameters, 1 given in /in/jeZhi on line 8 Notice: Undefined variable: map in /in/jeZhi on line 15 Warning: utf8_to_extended_ascii() expects exactly 2 parameters, 1 given in /in/jeZhi on line 8 Notice: Undefined variable: map in /in/jeZhi on line 15 int(2)
Output for 4.3.0 - 5.0.5
Warning: Missing argument 2 for utf8_to_extended_ascii() in /in/jeZhi on line 5 Warning: Missing argument 2 for utf8_to_extended_ascii() in /in/jeZhi on line 5 int(2)