1

我用strtolower测试了 PHP setlocale函数对我的标准UTF-8编码和波兰字母的使用。 不幸的是,我的经验告诉我这些函数不喜欢 UTF-8。 在 Windows 中我根本无法使用它。 好吧,事实证明我不能在我的主机服务器 Linux cp15.vpsi.pl 2.6.32-220.4.1.el6.x86_64 x86_64 上使用它。我在该系统上使用了 locale -a 命令来发现我必须使用pl_PL.UTF-8并且 setlocale 函数接受了它。 好吧,strtolower函数只能将我输入的波兰语大写字母的字符串原封不动地重复,波兰语字母转小写太难了。 不会出现此问题




pl_PL.iso88592
据我所知,UTF-8 是最好的编码,尤其是当你使用 WordPress 时。UTF-8 是否仅适用于非常复杂的计算机系统?!!!

4

4 回答 4

1

来自http://php.net/manual/en/function.strtolower.php

strtolower();不适用于波兰字符

<?php strtolower("mĄkA"); ?>

将返回:mĄka

最佳解决方案 - 使用mb_strtolower()

<?php mb_strtolower("mĄkA",'UTF-8'); ?>

将返回:mąka

于 2013-02-21T22:37:06.457 回答
1

使用mb_strtolower()函数。这会奏效。

于 2013-02-22T08:04:07.070 回答
0

mb_ 功能不错。可惜我的 php.exe(用于 Win7 中的 cmd.exe - cli)没有这个模块,无法识别这些功能。

于 2013-02-22T21:29:51.650 回答
0
    setlocale(LC_CTYPE, 'pl_PL.UTF-8');
    $str = iconv('utf-8', 'ascii//translit', $str);
    $str = strtolower($str);

iconv

于 2013-02-22T21:52:08.820 回答