ID:               47742
 Updated by:       j...@php.net
 Reported By:      fsb at thefsb dot org
-Status:           Open
+Status:           Feedback
 Bug Type:         mbstring related
 Operating System: os x
 PHP Version:      5.2.9
 New Comment:

This script:
<?php
$s = '&#935;&#953;&#972;&#957;&#953;&#945;,
&#946;&#961;&#959;&#967;&#941;&#962; &#954;&#945;&#953;
&#952;&#965;&#949;&#955;&#955;&#974;&#948;&#949;&#953;&#962;
&#940;&#957;&#949;&#956;&#959;&#953;
&#963;&#965;&#957;&#952;&#941;&#964;&#959;&#965;&#957; &#964;&#959;';
echo "orig: $s\n";
$s = mb_strtoupper($s);
echo "mb_strtoupper: $s\n";
$s = mb_convert_case($s, MB_CASE_UPPER, "UTF-8");
echo "mb_convert_case (upper): $s\n";
$s = mb_strtolower($s);
echo "mb_strtolower: $s\n";
$s = mb_convert_case($s, MB_CASE_LOWER, "UTF-8");
echo "mb_convert_case (lower): $s\n";
?>

Outputs:

orig: &#935;&#953;&#972;&#957;&#953;&#945;,
&#946;&#961;&#959;&#967;&#941;&#962; &#954;&#945;&#953;
&#952;&#965;&#949;&#955;&#955;&#974;&#948;&#949;&#953;&#962;
&#940;&#957;&#949;&#956;&#959;&#953;
&#963;&#965;&#957;&#952;&#941;&#964;&#959;&#965;&#957; &#964;&#959;
mb_strtoupper: &#935;&#921;&#908;&#925;&#921;&#913;,
&#914;&#929;&#927;&#935;&#904;&#931; &#922;&#913;&#921;
&#920;&#933;&#917;&#923;&#923;&#911;&#916;&#917;&#921;&#931;
&#902;&#925;&#917;&#924;&#927;&#921;
&#931;&#933;&#925;&#920;&#904;&#932;&#927;&#933;&#925; &#932;&#927;
mb_convert_case (upper): &#935;&#921;&#908;&#925;&#921;&#913;,
&#914;&#929;&#927;&#935;&#904;&#931; &#922;&#913;&#921;
&#920;&#933;&#917;&#923;&#923;&#911;&#916;&#917;&#921;&#931;
&#902;&#925;&#917;&#924;&#927;&#921; 
&#931;&#933;&#925;&#920;&#904;&#932;&#927;&#933;&#925; &#932;&#927;
mb_strtolower: &#967;&#953;&#972;&#957;&#953;&#945;,
&#946;&#961;&#959;&#967;&#941;&#963; &#954;&#945;&#953;
&#952;&#965;&#949;&#955;&#955;&#974;&#948;&#949;&#953;&#963;
&#940;&#957;&#949;&#956;&#959;&#953;
&#963;&#965;&#957;&#952;&#941;&#964;&#959;&#965;&#957; &#964;&#959;
mb_convert_case (lower): &#967;&#953;&#972;&#957;&#953;&#945;,
&#946;&#961;&#959;&#967;&#941;&#963; &#954;&#945;&#953;
&#952;&#965;&#949;&#955;&#955;&#974;&#948;&#949;&#953;&#963;
&#940;&#957;&#949;&#956;&#959;&#953; 
&#963;&#965;&#957;&#952;&#941;&#964;&#959;&#965;&#957; &#964;&#959;

And this is quite correct..


Previous Comments:
------------------------------------------------------------------------

[2009-05-05 11:37:26] fsb at thefsb dot org

in both test scripts i provided yesterday, the character set is unicode

and the encoding is utf-8.

in the short test script that i provided 4 May 7:02pm UTC, there is
only 
one short Hangul test string and no Greek, as you said.

in the longer test script i provided at 4 May 5:00pm UTC, several 
alphabets are used including Greek, Cyrillic, Hebrew, Arabic, Thai, 
Kanji, ...

in case it makes life easier for you, i put the longer test script on a

web server: http://tomworster.net/test.php.gz  it's only 1kbyte.

------------------------------------------------------------------------

[2009-05-05 02:02:39] j...@php.net

One last question: What is the charset you used? I don't see any greek

chars anywhere.. ;)

------------------------------------------------------------------------

[2009-05-04 19:02:43] fsb at thefsb dot org

<?php
  $s = '이며 세계';
  print(phpversion() . "\n");
  print("1: $s\n");
  print('2: '. ($s = mb_strtoupper($s)) . "\n");
  print('3'. ($s = mb_convert_case($s, MB_CASE_UPPER, "UTF-8")) . 
"\n");
  print('4: '. ($s = mb_strtolower($s)) . "\n");
  print('5: '. ($s = mb_convert_case($s, MB_CASE_LOWER, "UTF-8")) . 
"\n");
?>

 ./php -f test2.php 
5.2.10-dev
1: 이며 세계
2: ̝?˩? ̄?ʳ?
3̝˩ ̄ʳ
4: ?? ??
5:  

expected output:
1: 이며 세계
2: 이며 세계
3: 이며 세계
4: 이며 세계
5: 이며 세계

------------------------------------------------------------------------

[2009-05-04 18:46:54] j...@php.net

Please provide a bit shorter example script. Or does the bug only
appear 
with such long strings..?

------------------------------------------------------------------------

[2009-03-21 17:42:53] fsb at thefsb dot org

Description:
------------
In some alphabets including greek, mb_strtoupper and mb_strtolower fail

on strings that mb_convert_case handles ok.

Reproduce code:
---------------
<?php
        $strs = array(
                'החמאס: רוצים להשלים את עסקת שליט
במהירות האפשרית',
                'ايران لا ترى تغييرا في الموقف
الأمريكي',
                '独・米で死傷者を出した銃の乱射事件',
                '國會預算處公布驚人的赤字數據後',
                '이며 세계 경제 회복에 걸림돌이 되고 있다',
                'В дагестанском лесном массиве 
южнее
села Какашура',
                'นายประสิทธิ์ 
รุ่งสะอาด
ปลัดเทศบาล
รักษาการแทนนายกเทศมนตรี
ต.ท่าทองใหม่',
                'ભારતીય ટીમનો સુવર્ણ 
યુગ :
કિવીઝમાં પણ કમાલ',
                
'ཁམས་དཀར་མཛེས་ས་ཁུལ་དུ་རྒྱ་གཞུང་ལ་ཞི་བའི་ངོ་རྒོལ་',
                'Χιόνια, βροχές και θυελλώδεις 
άνεμοι
συνθέτουν το',
                'Հայաստանում սկսվել է դատական
համակարգի ձեւավորումը',
                'რუსეთი ასევე გეგმავს
სამხედრო');
        foreach ($strs as $s) {
                print("\n$s\n");
                print(($s = mb_strtoupper($s)) . "\n"); // cf: print(($s =
mb_convert_case($s, MB_CASE_UPPER, "UTF-8")) . "\n");
                print(($s = mb_strtolower($s)) . "\n"); // cf: print(($s =
mb_convert_case($s, MB_CASE_LOWER, "UTF-8")) . "\n");
        }
?>

Expected result:
----------------
החמאס: רוצים להשלים את עסקת שליט
במהירות האפשרית
החמאס: רוצים להשלים את עסקת שליט
במהירות האפשרית
החמאס: רוצים להשלים את עסקת שליט
במהירות האפשרית

ايران لا ترى تغييرا في الموقف الأمريكي
ايران لا ترى تغييرا في الموقف الأمريكي
ايران لا ترى تغييرا في الموقف الأمريكي

独・米で死傷者を出した銃の乱射事件
独・米で死傷者を出した銃の乱射事件
独・米で死傷者を出した銃の乱射事件

國會預算處公布驚人的赤字數據後
國會預算處公布驚人的赤字數據後
國會預算處公布驚人的赤字數據後

이며 세계 경제 회복에 걸림돌이 되고 있다
이며 세계 경제 회복에 걸림돌이 되고 있다
이며 세계 경제 회복에 걸림돌이 되고 있다

В дагестанском лесном массиве южнее
села Какашура
В ДАГЕСТАНСКОМ ЛЕСНОМ МАССИВЕ ЮЖНЕЕ
СЕЛА КАКАШУРА
в дагестанском лесном массиве южнее
села какашура

นายประสิทธิ์ รุ่งสะอาด
ปลัดเทศบาล
รักษาการแทนนายกเทศมนตรี
ต.ท่าทองใหม่
นายประสิทธิ์ รุ่งสะอาด
ปลัดเทศบาล
รักษาการแทนนายกเทศมนตรี
ต.ท่าทองใหม่
นายประสิทธิ์ รุ่งสะอาด
ปลัดเทศบาล
รักษาการแทนนายกเทศมนตรี
ต.ท่าทองใหม่

ભારતીય ટીમનો સુવર્ણ યુગ :
કિવીઝમાં પણ કમાલ
ભારતીય ટીમનો સુવર્ણ યુગ :
કિવીઝમાં પણ કમાલ
ભારતીય ટીમનો સુવર્ણ યુગ :
કિવીઝમાં પણ કમાલ

ཁམས་དཀར་མཛེས་ས་ཁུལ་དུ་རྒྱ་གཞུང་ལ་ཞི་བའི་ངོ་རྒོལ་
ཁམས་དཀར་མཛེས་ས་ཁུལ་དུ་རྒྱ་གཞུང་ལ་ཞི་བའི་ངོ་རྒོལ་
ཁམས་དཀར་མཛེས་ས་ཁུལ་དུ་རྒྱ་གཞུང་ལ་ཞི་བའི་ངོ་རྒོལ་

Χιόνια, βροχές και θυελλώδεις άνεμοι
συνθέτουν το
ΧΙΌΝΙΑ, ΒΡΟΧΈΣ ΚΑΙ ΘΥΕΛΛΏΔΕΙΣ ΆΝΕΜΟΙ
ΣΥΝΘΈΤΟΥΝ ΤΟ
χιόνια, βροχέσ και θυελλώδεισ άνεμοι
συνθέτουν το

Հայաստանում սկսվել է դատական
համակարգի ձեւավորումը
ՀԱՅԱՍՏԱՆՈՒՄ ՍԿՍՎԵԼ Է ԴԱՏԱԿԱՆ
ՀԱՄԱԿԱՐԳԻ ՁԵՒԱՎՈՐՈՒՄԸ
հայաստանում սկսվել է դատական
համակարգի ձեւավորումը

რუსეთი ასევე გეგმავს
სამხედრო
რუსეთი ასევე გეგმავს
სამხედრო
რუსეთი ასევე გეგმავს
სამხედრო






Actual result:
--------------
החמאס: רוצים להשלים את עסקת שליט
במהירות האפשרית
החמאס: רוצים להשלים את עסקת שליט
במהירות האפשרית
החמאס: רוצים להשלים את עסקת שליט
במהירות האפשרית

ايران لا ترى تغييرا في الموقف الأمريكي
ايران لا ترى تغييرا في الموقف الأمريكي
?????????? ???? ?????? ???????????? ???? ???????????? ????????????????

独・米で死傷者を出した銃の乱射事件
Nj?Ã?DZ?Á?ƭ?ł?Ȁ?Â?Ň?Á?Á?Ɋ?Á?Ĺ?Ű?ĺ?Ļ?
独・米で死傷者を出した銃の乱射事件

國會預算處公布驚人的赤字數據後
Ŝ?Ɯ?ɠ?Ǯ?ș?Ņ?Ÿ?ɩ?ĺ?ǚ????ŭ?ƕ?Ɠ?ž?
國會預算處公布驚人的???字數據後

이며 세계 경제 회복에 걸림돌이 되고 있다
̝?˩? ̄?ʳ? ʲ?̠? ͚?˳?̗? ʱ?˦?ˏ?̝? ː?ʳ? ̞?ˋ?
이며 세계 경제 회??에 걸림돌이 되고 있다

В дагестанском лесном массиве южнее
села Какашура
В даг??станском л??сном массив?? южн????
с??ла Какашура
? ????????????? ??????? ???????? ??????? ????? ????????

นายประสิทธิ์ รุ่งสะอาด
ปลัดเทศบาล
รักษาการแทนนายกเทศมนตรี
ต.ท่าทองใหม่
???????????????????????????????????? ??????????????????????????? ?????
????????????????????????? ????????????????????????????????????????????
????????????????????????? ???.??????????????????????????????
นายประสิทธิ์ รุ่งสะอาด
ปลัดเทศบาล
รักษาการแทนนายกเทศมนตร??
ต.ท่าทองใหม่

ભારતીય ટીમનો સુવર્ણ યુગ :
કિવીઝમાં પણ કમાલ
?????????????????? ??????????????? ?????????????????? ????????? : ????
???????????????????? ?????? ????????????
ભારતીય ટીમનો સુ??ર્ણ યુગ :
કિ??ીઝમાં પણ કમાલ

ཁམས་དཀར་མཛེས་ས་ཁུལ་དུ་རྒྱ་གཞུང་ལ་ཞི་བའི་ངོ་རྒོལ་
??????????????????????????????????????????????????????????????????????
??????????????????????????????????????????????????????????????????????
????
ཁམས་དཀར་མཛེས་ས་ཁུལ་དུ་རྒྱ་གཞུང་ལ་ཞི་བའི་ངོ་རྒོལ་

Χιόνια, βροχές και θυελλώδεις άνεμοι
συνθέτουν το
Χιόνια, βροχές και θυ??λλώδ??ις άν??μοι
συνθέτουν το
??????, ?????? ??? ???????????? ??????? ????????? ??

Հայաստանում սկսվել է դատական
համակարգի ձեւավորումը
Հա??աստանում սկսվել է դատական
համակարգի ձեւավորումը
?????????????????????? ???????????? ?? ?????????????? ????????????????
?? ??????????????????????

რუსეთი ასევე გეგმავს
სამხედრო
?????????????????? ??????????????? ????????????????????? ?????????????
???????????
რუსეთი ასევე გეგმავს
სამხედრო







------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=47742&edit=1

Reply via email to