git-svn-id: https://phpexcel.svn.codeplex.com/svn/trunk@66316 2327b42d-5241-43d6-9e2a-de5ac946f064

This commit is contained in:
Mark Baker 2011-01-02 12:14:18 +00:00
parent 1911d4a48f
commit 6ed30f559a
2 changed files with 40 additions and 38 deletions

View File

@ -47,45 +47,46 @@ class PHPExcel_Shared_CodePage
{ {
switch ($codePage) { switch ($codePage) {
case 367: return 'ASCII'; break; // ASCII case 367: return 'ASCII'; break; // ASCII
case 437: return 'CP437'; break; //OEM US case 437: return 'CP437'; break; // OEM US
case 720: throw new Exception('Code page 720 not supported.'); case 720: throw new Exception('Code page 720 not supported.');
break; //OEM Arabic break; // OEM Arabic
case 737: return 'CP737'; break; //OEM Greek case 737: return 'CP737'; break; // OEM Greek
case 775: return 'CP775'; break; //OEM Baltic case 775: return 'CP775'; break; // OEM Baltic
case 850: return 'CP850'; break; //OEM Latin I case 850: return 'CP850'; break; // OEM Latin I
case 852: return 'CP852'; break; //OEM Latin II (Central European) case 852: return 'CP852'; break; // OEM Latin II (Central European)
case 855: return 'CP855'; break; //OEM Cyrillic case 855: return 'CP855'; break; // OEM Cyrillic
case 857: return 'CP857'; break; //OEM Turkish case 857: return 'CP857'; break; // OEM Turkish
case 858: return 'CP858'; break; //OEM Multilingual Latin I with Euro case 858: return 'CP858'; break; // OEM Multilingual Latin I with Euro
case 860: return 'CP860'; break; //OEM Portugese case 860: return 'CP860'; break; // OEM Portugese
case 861: return 'CP861'; break; //OEM Icelandic case 861: return 'CP861'; break; // OEM Icelandic
case 862: return 'CP862'; break; //OEM Hebrew case 862: return 'CP862'; break; // OEM Hebrew
case 863: return 'CP863'; break; //OEM Canadian (French) case 863: return 'CP863'; break; // OEM Canadian (French)
case 864: return 'CP864'; break; //OEM Arabic case 864: return 'CP864'; break; // OEM Arabic
case 865: return 'CP865'; break; //OEM Nordic case 865: return 'CP865'; break; // OEM Nordic
case 866: return 'CP866'; break; //OEM Cyrillic (Russian) case 866: return 'CP866'; break; // OEM Cyrillic (Russian)
case 869: return 'CP869'; break; //OEM Greek (Modern) case 869: return 'CP869'; break; // OEM Greek (Modern)
case 874: return 'CP874'; break; //ANSI Thai case 874: return 'CP874'; break; // ANSI Thai
case 932: return 'CP932'; break; //ANSI Japanese Shift-JIS case 932: return 'CP932'; break; // ANSI Japanese Shift-JIS
case 936: return 'CP936'; break; //ANSI Chinese Simplified GBK case 936: return 'CP936'; break; // ANSI Chinese Simplified GBK
case 949: return 'CP949'; break; //ANSI Korean (Wansung) case 949: return 'CP949'; break; // ANSI Korean (Wansung)
case 950: return 'CP950'; break; //ANSI Chinese Traditional BIG5 case 950: return 'CP950'; break; // ANSI Chinese Traditional BIG5
case 1200: return 'UTF-16LE'; break; //UTF-16 (BIFF8) case 1200: return 'UTF-16LE'; break; // UTF-16 (BIFF8)
case 1250: return 'CP1250'; break; // ANSI Latin II (Central European) case 1250: return 'CP1250'; break; // ANSI Latin II (Central European)
case 1251: return 'CP1251'; break; //ANSI Cyrillic case 1251: return 'CP1251'; break; // ANSI Cyrillic
case 1252: return 'CP1252'; break; //ANSI Latin I (BIFF4-BIFF7) case 0: // CodePage is not always correctly set when the xls file was saved by Apple's Numbers program
case 1253: return 'CP1253'; break; //ANSI Greek case 1252: return 'CP1252'; break; // ANSI Latin I (BIFF4-BIFF7)
case 1254: return 'CP1254'; break; //ANSI Turkish case 1253: return 'CP1253'; break; // ANSI Greek
case 1255: return 'CP1255'; break; //ANSI Hebrew case 1254: return 'CP1254'; break; // ANSI Turkish
case 1256: return 'CP1256'; break; //ANSI Arabic case 1255: return 'CP1255'; break; // ANSI Hebrew
case 1257: return 'CP1257'; break; //ANSI Baltic case 1256: return 'CP1256'; break; // ANSI Arabic
case 1258: return 'CP1258'; break; //ANSI Vietnamese case 1257: return 'CP1257'; break; // ANSI Baltic
case 1361: return 'CP1361'; break; //ANSI Korean (Johab) case 1258: return 'CP1258'; break; // ANSI Vietnamese
case 10000: return 'MAC'; break; //Apple Roman case 1361: return 'CP1361'; break; // ANSI Korean (Johab)
case 32768: return 'MAC'; break; //Apple Roman case 10000: return 'MAC'; break; // Apple Roman
case 32768: return 'MAC'; break; // Apple Roman
case 32769: throw new Exception('Code page 32769 not supported.'); case 32769: throw new Exception('Code page 32769 not supported.');
break; //ANSI Latin I (BIFF2-BIFF3) break; // ANSI Latin I (BIFF2-BIFF3)
case 65001: return 'UTF-8'; break; //Unicode (UTF-8) case 65001: return 'UTF-8'; break; // Unicode (UTF-8)
} }
throw new Exception('Unknown codepage: ' . $codePage); throw new Exception('Unknown codepage: ' . $codePage);

View File

@ -31,6 +31,7 @@ Fixed in SVN:
- Bugfix: (MBaker) Work item 14898 - PHP Warning: preg_match(): Compilation failed: PCRE does not support \\L, \\l, \\N, \\P, \\p, \\U, \\u, or \\X - Bugfix: (MBaker) Work item 14898 - PHP Warning: preg_match(): Compilation failed: PCRE does not support \\L, \\l, \\N, \\P, \\p, \\U, \\u, or \\X
- Bugfix: (MBaker) Work item 14901 - VLOOKUP choking on parameters in PHPExcel.1.7.5/PHPExcel_Writer_Excel2007 - Bugfix: (MBaker) Work item 14901 - VLOOKUP choking on parameters in PHPExcel.1.7.5/PHPExcel_Writer_Excel2007
- Bugfix: (MBaker) Work item 14973 - PHPExcel_Cell::isInRange() incorrect results - offset by one column - Bugfix: (MBaker) Work item 14973 - PHPExcel_Cell::isInRange() incorrect results - offset by one column
- Bugfix: (MBaker) Treat CodePage of 0 as CP1251 (for .xls files written by applications that don't set the CodePage correctly, such as Apple Numbers)