strtoupper功能对俄语不起作用

时间:2014-03-20 14:42:57

标签: php locale

代码如下:

setlocale( LC_CTYPE, 'ru_RU' );
echo strtoupper('Hello! Привет!');

拉丁字符按预期转换。但俄罗斯 - 保持不变。

有什么想法吗?

1 个答案:

答案 0 :(得分:7)

您想要使用mb_strtoupper()代替:

mb_internal_encoding('UTF-8');
setlocale(LC_CTYPE, 'ru_RU');
echo mb_strtoupper('Hello! Привет!');

输出:

HELLO! ПРИВЕТ!

Demo