// mb_substr test foreach ($files as $size => $string) { $result = b_mb_split($string); var_dump($result); $timer->setMarker("mb_split - $size"); } echo "mb_substr_2 test\n"; // mb_substr test foreach ($files as $size => $string) { $result = b_mb_substr_2($string); var_dump($result); $timer->setMarker("mb_substr_2 - $size"); } */ echo $timer->getOutput(); function b_substr($str) { $l = strlen($str); echo $l . PHP_EOL; $buf = ''; for ($i = 0; $i < $l; ++$i) { $buf .= substr($str, $i, 1); } return $buf === $str; } function b_mb_substr($str) { $l = mb_strlen($str, "utf-8"); echo $l . PHP_EOL; $buf = '';