21 public static function toUtf8($string =
'', $encoding =
'iso-8859-1', $safe_mode =
false)
23 $safe = ($safe_mode) ? $string :
false;
24 if (strtoupper($encoding) ==
'UTF-8' || strtoupper($encoding) ==
'UTF8') {
27 if (strtoupper($encoding) ==
'ISO-8859-1') {
28 return \utf8_encode($string);
30 if (strtoupper($encoding) ==
'WINDOWS-1252') {
31 return \utf8_encode(self::map_w1252_iso8859_1($string));
34 if (strtoupper($encoding) ==
'UNICODE-1-1-UTF-7') {
37 if (function_exists(
'mb_convert_encoding')) {
38 $conv = @mb_convert_encoding($string,
'UTF-8', strtoupper($encoding));
43 if (function_exists(
'iconv')) {
44 $conv = @iconv(strtoupper($encoding),
'UTF-8', $string);
49 if (function_exists(
'libiconv')) {
50 $conv = @libiconv(strtoupper($encoding),
'UTF-8', $string);
68 public static function fromUtf8($string =
'', $encoding =
'iso-8859-1', $safe_mode =
false)
70 $safe = ($safe_mode) ? $string :
false;
72 $encoding =
'ISO-8859-1';
74 if (strtoupper($encoding) ==
'UTF-8' || strtoupper($encoding) ==
'UTF8') {
77 if (strtoupper($encoding) ==
'ISO-8859-1') {
78 return utf8_decode($string);
80 if (strtoupper($encoding) ==
'WINDOWS-1252') {
84 if (strtoupper($encoding) ==
'UNICODE-1-1-UTF-7') {
87 if (function_exists(
'mb_convert_encoding')) {
88 $conv = @mb_convert_encoding($string, strtoupper($encoding),
'UTF-8');
93 if (function_exists(
'iconv')) {
94 $conv = @iconv(
'UTF-8', strtoupper($encoding), $string);
99 if (function_exists(
'libiconv')) {
100 $conv = @libiconv(
'UTF-8', strtoupper($encoding), $string);
124 for ($i = 0; $i < strlen($string); ++$i) {
125 $c = ord($string{$i});
127 case 129: $return .= chr(252);
break;
128 case 132: $return .= chr(228);
break;
129 case 142: $return .= chr(196);
break;
130 case 148: $return .= chr(246);
break;
131 case 153: $return .= chr(214);
break;
132 case 154: $return .= chr(220);
break;
133 case 225: $return .= chr(223);
break;
134 default: $return .= chr($c);
156 for ($i = 0; $i < strlen($string); ++$i) {
157 $c = ord($string{$i});
159 case 196: $return .= chr(142);
break;
160 case 214: $return .= chr(153);
break;
161 case 220: $return .= chr(154);
break;
162 case 223: $return .= chr(225);
break;
163 case 228: $return .= chr(132);
break;
164 case 246: $return .= chr(148);
break;
165 case 252: $return .= chr(129);
break;
166 default: $return .= chr($c);