需要使用strtoupper和strtolower搜索希腊字母中的内容

时间:2009-12-30 11:50:14

标签: php

我目前正在GREEK项目中工作。在该项目中,所有内容都是GREEK,并且我有搜索功能。搜索过程很好。但是strtoupper()没有将希腊语转换为大写,而strtolower()没有将希腊语转换为小写。

但对于英语而言,它的工作正常。有没有办法将希腊字母转换为UPPER和LOWER情况。

感谢

FERO

5 个答案:

答案 0 :(得分:6)

没有理由mb_strtolower()mb_strtoupper()无效:

<?php

header('Content-Type: text/html; charset=utf-8');

echo mb_strtoupper('παπακωνσταντινου', 'UTF-8'); // ΠΑΠΑΚΩΝΣΤΑΝΤΙΝΟΥ
echo mb_strtolower('ΠΑΠΑΚΩΝΣΤΑΝΤΙΝΟΥ', 'UTF-8'); // παπακωνσταντινου

?>

使用mb_convert_case()是另一种选择,特别是如果您想模仿ucwords()

<?php

header('Content-Type: text/html; charset=utf-8');

echo mb_convert_case('παπακωνσταντινου', MB_CASE_UPPER, 'UTF-8'); // ΠΑΠΑΚΩΝΣΤΑΝΤΙΝΟΥ
echo mb_convert_case('ΠΑΠΑΚΩΝΣΤΑΝΤΙΝΟΥ', MB_CASE_LOWER, 'UTF-8'); // παπακωνσταντινου
echo mb_convert_case('παπακωνσταντινου', MB_CASE_TITLE, 'UTF-8'); // Παπακωνσταντινου

?>

答案 1 :(得分:2)

尝试这些功能怎么样:

mb_strtoupper
mb_strtolower

答案 2 :(得分:1)

使用Mb_StrToUpperMb_StrToLower

它们是Multibyte String Functions的一部分,可以使用多字节字符编码。

答案 3 :(得分:0)

答案 4 :(得分:0)

$ str ='παπακωνσταντινου';

$ test = mb_convert_case($ str,MB_CASE_UPPER,“UTF-8”);

这是正确的语法。

感谢所有人