我目前正在GREEK项目中工作。在该项目中,所有内容都是GREEK,并且我有搜索功能。搜索过程很好。但是strtoupper()没有将希腊语转换为大写,而strtolower()没有将希腊语转换为小写。
但对于英语而言,它的工作正常。有没有办法将希腊字母转换为UPPER和LOWER情况。
感谢
FERO
答案 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)
它们是Multibyte String Functions的一部分,可以使用多字节字符编码。
答案 3 :(得分:0)
答案 4 :(得分:0)
$ str ='παπακωνσταντινου';
$ test = mb_convert_case($ str,MB_CASE_UPPER,“UTF-8”);
这是正确的语法。
感谢所有人