function lc($str, $first = false) { if (function_exists('mb_strtolower')) { if ($first) { if (LanguageUtf8::isMultibyte($str)) { return mb_strtolower(mb_substr($str, 0, 1)) . mb_substr($str, 1); } else { return strtolower(substr($str, 0, 1)) . substr($str, 1); } } else { return LanguageUtf8::isMultibyte($str) ? mb_strtolower($str) : strtolower($str); } } else { if (LanguageUtf8::isMultibyte($str)) { global $wikiLowerChars; $x = $first ? '^' : ''; return preg_replace("/{$x}([A-Z]|[\\xc0-\\xff][\\x80-\\xbf]*)/e", "strtr( \"\$1\" , \$wikiLowerChars )", $str); } else { return $first ? strtolower(substr($str, 0, 1)) . substr($str, 1) : strtolower($str); } } }