Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
8.56% covered (danger)
8.56%
126 / 1472
5.88% covered (danger)
5.88%
1 / 17
CRAP
n/a
0 / 0
iso_8859_1
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
iso_8859_2
0.00% covered (danger)
0.00%
0 / 131
0.00% covered (danger)
0.00%
0 / 1
2
iso_8859_4
0.00% covered (danger)
0.00%
0 / 131
0.00% covered (danger)
0.00%
0 / 1
2
iso_8859_7
0.00% covered (danger)
0.00%
0 / 128
0.00% covered (danger)
0.00%
0 / 1
2
iso_8859_8
0.00% covered (danger)
0.00%
0 / 35
0.00% covered (danger)
0.00%
0 / 1
2
iso_8859_9
0.00% covered (danger)
0.00%
0 / 9
0.00% covered (danger)
0.00%
0 / 1
2
iso_8859_15
0.00% covered (danger)
0.00%
0 / 11
0.00% covered (danger)
0.00%
0 / 1
2
tis_620
0.00% covered (danger)
0.00%
0 / 122
0.00% covered (danger)
0.00%
0 / 1
2
cp874
0.00% covered (danger)
0.00%
0 / 100
0.00% covered (danger)
0.00%
0 / 1
2
cp1250
0.00% covered (danger)
0.00%
0 / 126
0.00% covered (danger)
0.00%
0 / 1
2
cp1251
0.00% covered (danger)
0.00%
0 / 130
0.00% covered (danger)
0.00%
0 / 1
2
cp1252
0.00% covered (danger)
0.00%
0 / 30
0.00% covered (danger)
0.00%
0 / 1
2
cp1254
0.00% covered (danger)
0.00%
0 / 34
0.00% covered (danger)
0.00%
0 / 1
2
cp1255
0.00% covered (danger)
0.00%
0 / 108
0.00% covered (danger)
0.00%
0 / 1
2
cp1256
0.00% covered (danger)
0.00%
0 / 131
0.00% covered (danger)
0.00%
0 / 1
2
cp1257
0.00% covered (danger)
0.00%
0 / 119
0.00% covered (danger)
0.00%
0 / 1
2
utf8_to_cp1252
100.00% covered (success)
100.00%
126 / 126
100.00% covered (success)
100.00%
1 / 1
1
1<?php
2function iso_8859_1($string)
3{
4    return utf8_encode($string);
5}
6
7function iso_8859_2($string)
8{
9    static $transform = array(
10        "\x80" => "\xC2\x80",
11        "\x81" => "\xC2\x81",
12        "\x82" => "\xC2\x82",
13        "\x83" => "\xC2\x83",
14        "\x84" => "\xC2\x84",
15        "\x85" => "\xC2\x85",
16        "\x86" => "\xC2\x86",
17        "\x87" => "\xC2\x87",
18        "\x88" => "\xC2\x88",
19        "\x89" => "\xC2\x89",
20        "\x8A" => "\xC2\x8A",
21        "\x8B" => "\xC2\x8B",
22        "\x8C" => "\xC2\x8C",
23        "\x8D" => "\xC2\x8D",
24        "\x8E" => "\xC2\x8E",
25        "\x8F" => "\xC2\x8F",
26        "\x90" => "\xC2\x90",
27        "\x91" => "\xC2\x91",
28        "\x92" => "\xC2\x92",
29        "\x93" => "\xC2\x93",
30        "\x94" => "\xC2\x94",
31        "\x95" => "\xC2\x95",
32        "\x96" => "\xC2\x96",
33        "\x97" => "\xC2\x97",
34        "\x98" => "\xC2\x98",
35        "\x99" => "\xC2\x99",
36        "\x9A" => "\xC2\x9A",
37        "\x9B" => "\xC2\x9B",
38        "\x9C" => "\xC2\x9C",
39        "\x9D" => "\xC2\x9D",
40        "\x9E" => "\xC2\x9E",
41        "\x9F" => "\xC2\x9F",
42        "\xA0" => "\xC2\xA0",
43        "\xA1" => "\xC4\x84",
44        "\xA2" => "\xCB\x98",
45        "\xA3" => "\xC5\x81",
46        "\xA4" => "\xC2\xA4",
47        "\xA5" => "\xC4\xBD",
48        "\xA6" => "\xC5\x9A",
49        "\xA7" => "\xC2\xA7",
50        "\xA8" => "\xC2\xA8",
51        "\xA9" => "\xC5\xA0",
52        "\xAA" => "\xC5\x9E",
53        "\xAB" => "\xC5\xA4",
54        "\xAC" => "\xC5\xB9",
55        "\xAD" => "\xC2\xAD",
56        "\xAE" => "\xC5\xBD",
57        "\xAF" => "\xC5\xBB",
58        "\xB0" => "\xC2\xB0",
59        "\xB1" => "\xC4\x85",
60        "\xB2" => "\xCB\x9B",
61        "\xB3" => "\xC5\x82",
62        "\xB4" => "\xC2\xB4",
63        "\xB5" => "\xC4\xBE",
64        "\xB6" => "\xC5\x9B",
65        "\xB7" => "\xCB\x87",
66        "\xB8" => "\xC2\xB8",
67        "\xB9" => "\xC5\xA1",
68        "\xBA" => "\xC5\x9F",
69        "\xBB" => "\xC5\xA5",
70        "\xBC" => "\xC5\xBA",
71        "\xBD" => "\xCB\x9D",
72        "\xBE" => "\xC5\xBE",
73        "\xBF" => "\xC5\xBC",
74        "\xC0" => "\xC5\x94",
75        "\xC1" => "\xC3\x81",
76        "\xC2" => "\xC3\x82",
77        "\xC3" => "\xC4\x82",
78        "\xC4" => "\xC3\x84",
79        "\xC5" => "\xC4\xB9",
80        "\xC6" => "\xC4\x86",
81        "\xC7" => "\xC3\x87",
82        "\xC8" => "\xC4\x8C",
83        "\xC9" => "\xC3\x89",
84        "\xCA" => "\xC4\x98",
85        "\xCB" => "\xC3\x8B",
86        "\xCC" => "\xC4\x9A",
87        "\xCD" => "\xC3\x8D",
88        "\xCE" => "\xC3\x8E",
89        "\xCF" => "\xC4\x8E",
90        "\xD0" => "\xC4\x90",
91        "\xD1" => "\xC5\x83",
92        "\xD2" => "\xC5\x87",
93        "\xD3" => "\xC3\x93",
94        "\xD4" => "\xC3\x94",
95        "\xD5" => "\xC5\x90",
96        "\xD6" => "\xC3\x96",
97        "\xD7" => "\xC3\x97",
98        "\xD8" => "\xC5\x98",
99        "\xD9" => "\xC5\xAE",
100        "\xDA" => "\xC3\x9A",
101        "\xDB" => "\xC5\xB0",
102        "\xDC" => "\xC3\x9C",
103        "\xDD" => "\xC3\x9D",
104        "\xDE" => "\xC5\xA2",
105        "\xDF" => "\xC3\x9F",
106        "\xE0" => "\xC5\x95",
107        "\xE1" => "\xC3\xA1",
108        "\xE2" => "\xC3\xA2",
109        "\xE3" => "\xC4\x83",
110        "\xE4" => "\xC3\xA4",
111        "\xE5" => "\xC4\xBA",
112        "\xE6" => "\xC4\x87",
113        "\xE7" => "\xC3\xA7",
114        "\xE8" => "\xC4\x8D",
115        "\xE9" => "\xC3\xA9",
116        "\xEA" => "\xC4\x99",
117        "\xEB" => "\xC3\xAB",
118        "\xEC" => "\xC4\x9B",
119        "\xED" => "\xC3\xAD",
120        "\xEE" => "\xC3\xAE",
121        "\xEF" => "\xC4\x8F",
122        "\xF0" => "\xC4\x91",
123        "\xF1" => "\xC5\x84",
124        "\xF2" => "\xC5\x88",
125        "\xF3" => "\xC3\xB3",
126        "\xF4" => "\xC3\xB4",
127        "\xF5" => "\xC5\x91",
128        "\xF6" => "\xC3\xB6",
129        "\xF7" => "\xC3\xB7",
130        "\xF8" => "\xC5\x99",
131        "\xF9" => "\xC5\xAF",
132        "\xFA" => "\xC3\xBA",
133        "\xFB" => "\xC5\xB1",
134        "\xFC" => "\xC3\xBC",
135        "\xFD" => "\xC3\xBD",
136        "\xFE" => "\xC5\xA3",
137        "\xFF" => "\xCB\x99",
138    );
139    return strtr($string, $transform);
140}
141
142function iso_8859_4($string)
143{
144    static $transform = array(
145        "\x80" => "\xC2\x80",
146        "\x81" => "\xC2\x81",
147        "\x82" => "\xC2\x82",
148        "\x83" => "\xC2\x83",
149        "\x84" => "\xC2\x84",
150        "\x85" => "\xC2\x85",
151        "\x86" => "\xC2\x86",
152        "\x87" => "\xC2\x87",
153        "\x88" => "\xC2\x88",
154        "\x89" => "\xC2\x89",
155        "\x8A" => "\xC2\x8A",
156        "\x8B" => "\xC2\x8B",
157        "\x8C" => "\xC2\x8C",
158        "\x8D" => "\xC2\x8D",
159        "\x8E" => "\xC2\x8E",
160        "\x8F" => "\xC2\x8F",
161        "\x90" => "\xC2\x90",
162        "\x91" => "\xC2\x91",
163        "\x92" => "\xC2\x92",
164        "\x93" => "\xC2\x93",
165        "\x94" => "\xC2\x94",
166        "\x95" => "\xC2\x95",
167        "\x96" => "\xC2\x96",
168        "\x97" => "\xC2\x97",
169        "\x98" => "\xC2\x98",
170        "\x99" => "\xC2\x99",
171        "\x9A" => "\xC2\x9A",
172        "\x9B" => "\xC2\x9B",
173        "\x9C" => "\xC2\x9C",
174        "\x9D" => "\xC2\x9D",
175        "\x9E" => "\xC2\x9E",
176        "\x9F" => "\xC2\x9F",
177        "\xA0" => "\xC2\xA0",
178        "\xA1" => "\xC4\x84",
179        "\xA2" => "\xC4\xB8",
180        "\xA3" => "\xC5\x96",
181        "\xA4" => "\xC2\xA4",
182        "\xA5" => "\xC4\xA8",
183        "\xA6" => "\xC4\xBB",
184        "\xA7" => "\xC2\xA7",
185        "\xA8" => "\xC2\xA8",
186        "\xA9" => "\xC5\xA0",
187        "\xAA" => "\xC4\x92",
188        "\xAB" => "\xC4\xA2",
189        "\xAC" => "\xC5\xA6",
190        "\xAD" => "\xC2\xAD",
191        "\xAE" => "\xC5\xBD",
192        "\xAF" => "\xC2\xAF",
193        "\xB0" => "\xC2\xB0",
194        "\xB1" => "\xC4\x85",
195        "\xB2" => "\xCB\x9B",
196        "\xB3" => "\xC5\x97",
197        "\xB4" => "\xC2\xB4",
198        "\xB5" => "\xC4\xA9",
199        "\xB6" => "\xC4\xBC",
200        "\xB7" => "\xCB\x87",
201        "\xB8" => "\xC2\xB8",
202        "\xB9" => "\xC5\xA1",
203        "\xBA" => "\xC4\x93",
204        "\xBB" => "\xC4\xA3",
205        "\xBC" => "\xC5\xA7",
206        "\xBD" => "\xC5\x8A",
207        "\xBE" => "\xC5\xBE",
208        "\xBF" => "\xC5\x8B",
209        "\xC0" => "\xC4\x80",
210        "\xC1" => "\xC3\x81",
211        "\xC2" => "\xC3\x82",
212        "\xC3" => "\xC3\x83",
213        "\xC4" => "\xC3\x84",
214        "\xC5" => "\xC3\x85",
215        "\xC6" => "\xC3\x86",
216        "\xC7" => "\xC4\xAE",
217        "\xC8" => "\xC4\x8C",
218        "\xC9" => "\xC3\x89",
219        "\xCA" => "\xC4\x98",
220        "\xCB" => "\xC3\x8B",
221        "\xCC" => "\xC4\x96",
222        "\xCD" => "\xC3\x8D",
223        "\xCE" => "\xC3\x8E",
224        "\xCF" => "\xC4\xAA",
225        "\xD0" => "\xC4\x90",
226        "\xD1" => "\xC5\x85",
227        "\xD2" => "\xC5\x8C",
228        "\xD3" => "\xC4\xB6",
229        "\xD4" => "\xC3\x94",
230        "\xD5" => "\xC3\x95",
231        "\xD6" => "\xC3\x96",
232        "\xD7" => "\xC3\x97",
233        "\xD8" => "\xC3\x98",
234        "\xD9" => "\xC5\xB2",
235        "\xDA" => "\xC3\x9A",
236        "\xDB" => "\xC3\x9B",
237        "\xDC" => "\xC3\x9C",
238        "\xDD" => "\xC5\xA8",
239        "\xDE" => "\xC5\xAA",
240        "\xDF" => "\xC3\x9F",
241        "\xE0" => "\xC4\x81",
242        "\xE1" => "\xC3\xA1",
243        "\xE2" => "\xC3\xA2",
244        "\xE3" => "\xC3\xA3",
245        "\xE4" => "\xC3\xA4",
246        "\xE5" => "\xC3\xA5",
247        "\xE6" => "\xC3\xA6",
248        "\xE7" => "\xC4\xAF",
249        "\xE8" => "\xC4\x8D",
250        "\xE9" => "\xC3\xA9",
251        "\xEA" => "\xC4\x99",
252        "\xEB" => "\xC3\xAB",
253        "\xEC" => "\xC4\x97",
254        "\xED" => "\xC3\xAD",
255        "\xEE" => "\xC3\xAE",
256        "\xEF" => "\xC4\xAB",
257        "\xF0" => "\xC4\x91",
258        "\xF1" => "\xC5\x86",
259        "\xF2" => "\xC5\x8D",
260        "\xF3" => "\xC4\xB7",
261        "\xF4" => "\xC3\xB4",
262        "\xF5" => "\xC3\xB5",
263        "\xF6" => "\xC3\xB6",
264        "\xF7" => "\xC3\xB7",
265        "\xF8" => "\xC3\xB8",
266        "\xF9" => "\xC5\xB3",
267        "\xFA" => "\xC3\xBA",
268        "\xFB" => "\xC3\xBB",
269        "\xFC" => "\xC3\xBC",
270        "\xFD" => "\xC5\xA9",
271        "\xFE" => "\xC5\xAB",
272        "\xFF" => "\xCB\x99",
273    );
274    return strtr($string, $transform);
275}
276
277function iso_8859_7($string)
278{
279    static $transform = array(
280        "\x80" => "\xC2\x80",
281        "\x81" => "\xC2\x81",
282        "\x82" => "\xC2\x82",
283        "\x83" => "\xC2\x83",
284        "\x84" => "\xC2\x84",
285        "\x85" => "\xC2\x85",
286        "\x86" => "\xC2\x86",
287        "\x87" => "\xC2\x87",
288        "\x88" => "\xC2\x88",
289        "\x89" => "\xC2\x89",
290        "\x8A" => "\xC2\x8A",
291        "\x8B" => "\xC2\x8B",
292        "\x8C" => "\xC2\x8C",
293        "\x8D" => "\xC2\x8D",
294        "\x8E" => "\xC2\x8E",
295        "\x8F" => "\xC2\x8F",
296        "\x90" => "\xC2\x90",
297        "\x91" => "\xC2\x91",
298        "\x92" => "\xC2\x92",
299        "\x93" => "\xC2\x93",
300        "\x94" => "\xC2\x94",
301        "\x95" => "\xC2\x95",
302        "\x96" => "\xC2\x96",
303        "\x97" => "\xC2\x97",
304        "\x98" => "\xC2\x98",
305        "\x99" => "\xC2\x99",
306        "\x9A" => "\xC2\x9A",
307        "\x9B" => "\xC2\x9B",
308        "\x9C" => "\xC2\x9C",
309        "\x9D" => "\xC2\x9D",
310        "\x9E" => "\xC2\x9E",
311        "\x9F" => "\xC2\x9F",
312        "\xA0" => "\xC2\xA0",
313        "\xA1" => "\xE2\x80\x98",
314        "\xA2" => "\xE2\x80\x99",
315        "\xA3" => "\xC2\xA3",
316        "\xA4" => "\xE2\x82\xAC",
317        "\xA5" => "\xE2\x82\xAF",
318        "\xA6" => "\xC2\xA6",
319        "\xA7" => "\xC2\xA7",
320        "\xA8" => "\xC2\xA8",
321        "\xA9" => "\xC2\xA9",
322        "\xAA" => "\xCD\xBA",
323        "\xAB" => "\xC2\xAB",
324        "\xAC" => "\xC2\xAC",
325        "\xAD" => "\xC2\xAD",
326        "\xAF" => "\xE2\x80\x95",
327        "\xB0" => "\xC2\xB0",
328        "\xB1" => "\xC2\xB1",
329        "\xB2" => "\xC2\xB2",
330        "\xB3" => "\xC2\xB3",
331        "\xB4" => "\xCE\x84",
332        "\xB5" => "\xCE\x85",
333        "\xB6" => "\xCE\x86",
334        "\xB7" => "\xC2\xB7",
335        "\xB8" => "\xCE\x88",
336        "\xB9" => "\xCE\x89",
337        "\xBA" => "\xCE\x8A",
338        "\xBB" => "\xC2\xBB",
339        "\xBC" => "\xCE\x8C",
340        "\xBD" => "\xC2\xBD",
341        "\xBE" => "\xCE\x8E",
342        "\xBF" => "\xCE\x8F",
343        "\xC0" => "\xCE\x90",
344        "\xC1" => "\xCE\x91",
345        "\xC2" => "\xCE\x92",
346        "\xC3" => "\xCE\x93",
347        "\xC4" => "\xCE\x94",
348        "\xC5" => "\xCE\x95",
349        "\xC6" => "\xCE\x96",
350        "\xC7" => "\xCE\x97",
351        "\xC8" => "\xCE\x98",
352        "\xC9" => "\xCE\x99",
353        "\xCA" => "\xCE\x9A",
354        "\xCB" => "\xCE\x9B",
355        "\xCC" => "\xCE\x9C",
356        "\xCD" => "\xCE\x9D",
357        "\xCE" => "\xCE\x9E",
358        "\xCF" => "\xCE\x9F",
359        "\xD0" => "\xCE\xA0",
360        "\xD1" => "\xCE\xA1",
361        "\xD3" => "\xCE\xA3",
362        "\xD4" => "\xCE\xA4",
363        "\xD5" => "\xCE\xA5",
364        "\xD6" => "\xCE\xA6",
365        "\xD7" => "\xCE\xA7",
366        "\xD8" => "\xCE\xA8",
367        "\xD9" => "\xCE\xA9",
368        "\xDA" => "\xCE\xAA",
369        "\xDB" => "\xCE\xAB",
370        "\xDC" => "\xCE\xAC",
371        "\xDD" => "\xCE\xAD",
372        "\xDE" => "\xCE\xAE",
373        "\xDF" => "\xCE\xAF",
374        "\xE0" => "\xCE\xB0",
375        "\xE1" => "\xCE\xB1",
376        "\xE2" => "\xCE\xB2",
377        "\xE3" => "\xCE\xB3",
378        "\xE4" => "\xCE\xB4",
379        "\xE5" => "\xCE\xB5",
380        "\xE6" => "\xCE\xB6",
381        "\xE7" => "\xCE\xB7",
382        "\xE8" => "\xCE\xB8",
383        "\xE9" => "\xCE\xB9",
384        "\xEA" => "\xCE\xBA",
385        "\xEB" => "\xCE\xBB",
386        "\xEC" => "\xCE\xBC",
387        "\xED" => "\xCE\xBD",
388        "\xEE" => "\xCE\xBE",
389        "\xEF" => "\xCE\xBF",
390        "\xF0" => "\xCF\x80",
391        "\xF1" => "\xCF\x81",
392        "\xF2" => "\xCF\x82",
393        "\xF3" => "\xCF\x83",
394        "\xF4" => "\xCF\x84",
395        "\xF5" => "\xCF\x85",
396        "\xF6" => "\xCF\x86",
397        "\xF7" => "\xCF\x87",
398        "\xF8" => "\xCF\x88",
399        "\xF9" => "\xCF\x89",
400        "\xFA" => "\xCF\x8A",
401        "\xFB" => "\xCF\x8B",
402        "\xFC" => "\xCF\x8C",
403        "\xFD" => "\xCF\x8D",
404        "\xFE" => "\xCF\x8E",
405    );
406    return strtr($string, $transform);
407}
408
409function iso_8859_8($string)
410{
411    static $transform = array(
412        "\xC2\xAA" => "\xC3\x97",
413        "\xC2\xBA" => "\xC3\xB7",
414        "\xC3\x9F" => "\xE2\x80\x97",
415        "\xC3\xA0" => "\xD7\x90",
416        "\xC3\xA1" => "\xD7\x91",
417        "\xC3\xA2" => "\xD7\x92",
418        "\xC3\xA3" => "\xD7\x93",
419        "\xC3\xA4" => "\xD7\x94",
420        "\xC3\xA5" => "\xD7\x95",
421        "\xC3\xA6" => "\xD7\x96",
422        "\xC3\xA7" => "\xD7\x97",
423        "\xC3\xA8" => "\xD7\x98",
424        "\xC3\xA9" => "\xD7\x99",
425        "\xC3\xAA" => "\xD7\x9A",
426        "\xC3\xAB" => "\xD7\x9B",
427        "\xC3\xAC" => "\xD7\x9C",
428        "\xC3\xAD" => "\xD7\x9D",
429        "\xC3\xAE" => "\xD7\x9E",
430        "\xC3\xAF" => "\xD7\x9F",
431        "\xC3\xB0" => "\xD7\xA0",
432        "\xC3\xB1" => "\xD7\xA1",
433        "\xC3\xB2" => "\xD7\xA2",
434        "\xC3\xB3" => "\xD7\xA3",
435        "\xC3\xB4" => "\xD7\xA4",
436        "\xC3\xB5" => "\xD7\xA5",
437        "\xC3\xB6" => "\xD7\xA6",
438        "\xC3\xB7" => "\xD7\xA7",
439        "\xC3\xB8" => "\xD7\xA8",
440        "\xC3\xB9" => "\xD7\xA9",
441        "\xC3\xBA" => "\xD7\xAA",
442        "\xC3\xBD" => "\xE2\x80\x8E",
443        "\xC3\xBE" => "\xE2\x80\x8F",
444    );
445    return strtr(utf8_encode($string), $transform);
446}
447
448function iso_8859_9($string)
449{
450    static $transform = array(
451        "\xC3\x90" => "\xC4\x9E",
452        "\xC3\x9D" => "\xC4\xB0",
453        "\xC3\x9E" => "\xC5\x9E",
454        "\xC3\xB0" => "\xC4\x9F",
455        "\xC3\xBD" => "\xC4\xB1",
456        "\xC3\xBE" => "\xC5\x9F",
457    );
458    return strtr(utf8_encode($string), $transform);
459}
460
461function iso_8859_15($string)
462{
463    static $transform = array(
464        "\xC2\xA4" => "\xE2\x82\xAC",
465        "\xC2\xA6" => "\xC5\xA0",
466        "\xC2\xA8" => "\xC5\xA1",
467        "\xC2\xB4" => "\xC5\xBD",
468        "\xC2\xB8" => "\xC5\xBE",
469        "\xC2\xBC" => "\xC5\x92",
470        "\xC2\xBD" => "\xC5\x93",
471        "\xC2\xBE" => "\xC5\xB8",
472    );
473    return strtr(utf8_encode($string), $transform);
474}
475
476// nearly the same as iso-8859-11
477function tis_620($string)
478{
479    static $transform = array(
480        "\x80" => "\xC2\x80",
481        "\x81" => "\xC2\x81",
482        "\x82" => "\xC2\x82",
483        "\x83" => "\xC2\x83",
484        "\x84" => "\xC2\x84",
485        "\x85" => "\xC2\x85",
486        "\x86" => "\xC2\x86",
487        "\x87" => "\xC2\x87",
488        "\x88" => "\xC2\x88",
489        "\x89" => "\xC2\x89",
490        "\x8A" => "\xC2\x8A",
491        "\x8B" => "\xC2\x8B",
492        "\x8C" => "\xC2\x8C",
493        "\x8D" => "\xC2\x8D",
494        "\x8E" => "\xC2\x8E",
495        "\x8F" => "\xC2\x8F",
496        "\x90" => "\xC2\x90",
497        "\x91" => "\xC2\x91",
498        "\x92" => "\xC2\x92",
499        "\x93" => "\xC2\x93",
500        "\x94" => "\xC2\x94",
501        "\x95" => "\xC2\x95",
502        "\x96" => "\xC2\x96",
503        "\x97" => "\xC2\x97",
504        "\x98" => "\xC2\x98",
505        "\x99" => "\xC2\x99",
506        "\x9A" => "\xC2\x9A",
507        "\x9B" => "\xC2\x9B",
508        "\x9C" => "\xC2\x9C",
509        "\x9D" => "\xC2\x9D",
510        "\x9E" => "\xC2\x9E",
511        "\x9F" => "\xC2\x9F",
512        "\xA1" => "\xE0\xB8\x81",
513        "\xA2" => "\xE0\xB8\x82",
514        "\xA3" => "\xE0\xB8\x83",
515        "\xA4" => "\xE0\xB8\x84",
516        "\xA5" => "\xE0\xB8\x85",
517        "\xA6" => "\xE0\xB8\x86",
518        "\xA7" => "\xE0\xB8\x87",
519        "\xA8" => "\xE0\xB8\x88",
520        "\xA9" => "\xE0\xB8\x89",
521        "\xAA" => "\xE0\xB8\x8A",
522        "\xAB" => "\xE0\xB8\x8B",
523        "\xAC" => "\xE0\xB8\x8C",
524        "\xAD" => "\xE0\xB8\x8D",
525        "\xAE" => "\xE0\xB8\x8E",
526        "\xAF" => "\xE0\xB8\x8F",
527        "\xB0" => "\xE0\xB8\x90",
528        "\xB1" => "\xE0\xB8\x91",
529        "\xB2" => "\xE0\xB8\x92",
530        "\xB3" => "\xE0\xB8\x93",
531        "\xB4" => "\xE0\xB8\x94",
532        "\xB5" => "\xE0\xB8\x95",
533        "\xB6" => "\xE0\xB8\x96",
534        "\xB7" => "\xE0\xB8\x97",
535        "\xB8" => "\xE0\xB8\x98",
536        "\xB9" => "\xE0\xB8\x99",
537        "\xBA" => "\xE0\xB8\x9A",
538        "\xBB" => "\xE0\xB8\x9B",
539        "\xBC" => "\xE0\xB8\x9C",
540        "\xBD" => "\xE0\xB8\x9D",
541        "\xBE" => "\xE0\xB8\x9E",
542        "\xBF" => "\xE0\xB8\x9F",
543        "\xC0" => "\xE0\xB8\xA0",
544        "\xC1" => "\xE0\xB8\xA1",
545        "\xC2" => "\xE0\xB8\xA2",
546        "\xC3" => "\xE0\xB8\xA3",
547        "\xC4" => "\xE0\xB8\xA4",
548        "\xC5" => "\xE0\xB8\xA5",
549        "\xC6" => "\xE0\xB8\xA6",
550        "\xC7" => "\xE0\xB8\xA7",
551        "\xC8" => "\xE0\xB8\xA8",
552        "\xC9" => "\xE0\xB8\xA9",
553        "\xCA" => "\xE0\xB8\xAA",
554        "\xCB" => "\xE0\xB8\xAB",
555        "\xCC" => "\xE0\xB8\xAC",
556        "\xCD" => "\xE0\xB8\xAD",
557        "\xCE" => "\xE0\xB8\xAE",
558        "\xCF" => "\xE0\xB8\xAF",
559        "\xD0" => "\xE0\xB8\xB0",
560        "\xD1" => "\xE0\xB8\xB1",
561        "\xD2" => "\xE0\xB8\xB2",
562        "\xD3" => "\xE0\xB8\xB3",
563        "\xD4" => "\xE0\xB8\xB4",
564        "\xD5" => "\xE0\xB8\xB5",
565        "\xD6" => "\xE0\xB8\xB6",
566        "\xD7" => "\xE0\xB8\xB7",
567        "\xD8" => "\xE0\xB8\xB8",
568        "\xD9" => "\xE0\xB8\xB9",
569        "\xDA" => "\xE0\xB8\xBA",
570        "\xDF" => "\xE0\xB8\xBF",
571        "\xE0" => "\xE0\xB9\x80",
572        "\xE1" => "\xE0\xB9\x81",
573        "\xE2" => "\xE0\xB9\x82",
574        "\xE3" => "\xE0\xB9\x83",
575        "\xE4" => "\xE0\xB9\x84",
576        "\xE5" => "\xE0\xB9\x85",
577        "\xE6" => "\xE0\xB9\x86",
578        "\xE7" => "\xE0\xB9\x87",
579        "\xE8" => "\xE0\xB9\x88",
580        "\xE9" => "\xE0\xB9\x89",
581        "\xEA" => "\xE0\xB9\x8A",
582        "\xEB" => "\xE0\xB9\x8B",
583        "\xEC" => "\xE0\xB9\x8C",
584        "\xED" => "\xE0\xB9\x8D",
585        "\xEE" => "\xE0\xB9\x8E",
586        "\xEF" => "\xE0\xB9\x8F",
587        "\xF0" => "\xE0\xB9\x90",
588        "\xF1" => "\xE0\xB9\x91",
589        "\xF2" => "\xE0\xB9\x92",
590        "\xF3" => "\xE0\xB9\x93",
591        "\xF4" => "\xE0\xB9\x94",
592        "\xF5" => "\xE0\xB9\x95",
593        "\xF6" => "\xE0\xB9\x96",
594        "\xF7" => "\xE0\xB9\x97",
595        "\xF8" => "\xE0\xB9\x98",
596        "\xF9" => "\xE0\xB9\x99",
597        "\xFA" => "\xE0\xB9\x9A",
598        "\xFB" => "\xE0\xB9\x9B",
599    );
600    return strtr($string, $transform);
601}
602
603function cp874($string)
604{
605    static $transform = array(
606        "\x80" => "\xE2\x82\xAC",
607        "\x85" => "\xE2\x80\xA6",
608        "\x91" => "\xE2\x80\x98",
609        "\x92" => "\xE2\x80\x99",
610        "\x93" => "\xE2\x80\x9C",
611        "\x94" => "\xE2\x80\x9D",
612        "\x95" => "\xE2\x80\xA2",
613        "\x96" => "\xE2\x80\x93",
614        "\x97" => "\xE2\x80\x94",
615        "\xA0" => "\xC2\xA0",
616        "\xA1" => "\xE0\xB8\x81",
617        "\xA2" => "\xE0\xB8\x82",
618        "\xA3" => "\xE0\xB8\x83",
619        "\xA4" => "\xE0\xB8\x84",
620        "\xA5" => "\xE0\xB8\x85",
621        "\xA6" => "\xE0\xB8\x86",
622        "\xA7" => "\xE0\xB8\x87",
623        "\xA8" => "\xE0\xB8\x88",
624        "\xA9" => "\xE0\xB8\x89",
625        "\xAA" => "\xE0\xB8\x8A",
626        "\xAB" => "\xE0\xB8\x8B",
627        "\xAC" => "\xE0\xB8\x8C",
628        "\xAD" => "\xE0\xB8\x8D",
629        "\xAE" => "\xE0\xB8\x8E",
630        "\xAF" => "\xE0\xB8\x8F",
631        "\xB0" => "\xE0\xB8\x90",
632        "\xB1" => "\xE0\xB8\x91",
633        "\xB2" => "\xE0\xB8\x92",
634        "\xB3" => "\xE0\xB8\x93",
635        "\xB4" => "\xE0\xB8\x94",
636        "\xB5" => "\xE0\xB8\x95",
637        "\xB6" => "\xE0\xB8\x96",
638        "\xB7" => "\xE0\xB8\x97",
639        "\xB8" => "\xE0\xB8\x98",
640        "\xB9" => "\xE0\xB8\x99",
641        "\xBA" => "\xE0\xB8\x9A",
642        "\xBB" => "\xE0\xB8\x9B",
643        "\xBC" => "\xE0\xB8\x9C",
644        "\xBD" => "\xE0\xB8\x9D",
645        "\xBE" => "\xE0\xB8\x9E",
646        "\xBF" => "\xE0\xB8\x9F",
647        "\xC0" => "\xE0\xB8\xA0",
648        "\xC1" => "\xE0\xB8\xA1",
649        "\xC2" => "\xE0\xB8\xA2",
650        "\xC3" => "\xE0\xB8\xA3",
651        "\xC4" => "\xE0\xB8\xA4",
652        "\xC5" => "\xE0\xB8\xA5",
653        "\xC6" => "\xE0\xB8\xA6",
654        "\xC7" => "\xE0\xB8\xA7",
655        "\xC8" => "\xE0\xB8\xA8",
656        "\xC9" => "\xE0\xB8\xA9",
657        "\xCA" => "\xE0\xB8\xAA",
658        "\xCB" => "\xE0\xB8\xAB",
659        "\xCC" => "\xE0\xB8\xAC",
660        "\xCD" => "\xE0\xB8\xAD",
661        "\xCE" => "\xE0\xB8\xAE",
662        "\xCF" => "\xE0\xB8\xAF",
663        "\xD0" => "\xE0\xB8\xB0",
664        "\xD1" => "\xE0\xB8\xB1",
665        "\xD2" => "\xE0\xB8\xB2",
666        "\xD3" => "\xE0\xB8\xB3",
667        "\xD4" => "\xE0\xB8\xB4",
668        "\xD5" => "\xE0\xB8\xB5",
669        "\xD6" => "\xE0\xB8\xB6",
670        "\xD7" => "\xE0\xB8\xB7",
671        "\xD8" => "\xE0\xB8\xB8",
672        "\xD9" => "\xE0\xB8\xB9",
673        "\xDA" => "\xE0\xB8\xBA",
674        "\xDF" => "\xE0\xB8\xBF",
675        "\xE0" => "\xE0\xB9\x80",
676        "\xE1" => "\xE0\xB9\x81",
677        "\xE2" => "\xE0\xB9\x82",
678        "\xE3" => "\xE0\xB9\x83",
679        "\xE4" => "\xE0\xB9\x84",
680        "\xE5" => "\xE0\xB9\x85",
681        "\xE6" => "\xE0\xB9\x86",
682        "\xE7" => "\xE0\xB9\x87",
683        "\xE8" => "\xE0\xB9\x88",
684        "\xE9" => "\xE0\xB9\x89",
685        "\xEA" => "\xE0\xB9\x8A",
686        "\xEB" => "\xE0\xB9\x8B",
687        "\xEC" => "\xE0\xB9\x8C",
688        "\xED" => "\xE0\xB9\x8D",
689        "\xEE" => "\xE0\xB9\x8E",
690        "\xEF" => "\xE0\xB9\x8F",
691        "\xF0" => "\xE0\xB9\x90",
692        "\xF1" => "\xE0\xB9\x91",
693        "\xF2" => "\xE0\xB9\x92",
694        "\xF3" => "\xE0\xB9\x93",
695        "\xF4" => "\xE0\xB9\x94",
696        "\xF5" => "\xE0\xB9\x95",
697        "\xF6" => "\xE0\xB9\x96",
698        "\xF7" => "\xE0\xB9\x97",
699        "\xF8" => "\xE0\xB9\x98",
700        "\xF9" => "\xE0\xB9\x99",
701        "\xFA" => "\xE0\xB9\x9A",
702        "\xFB" => "\xE0\xB9\x9B",
703    );
704    return strtr($string, $transform);
705}
706
707function cp1250($string)
708{
709    static $transform = array(
710        "\x80" => "\xE2\x82\xAC",
711        "\x82" => "\xE2\x80\x9A",
712        "\x84" => "\xE2\x80\x9E",
713        "\x85" => "\xE2\x80\xA6",
714        "\x86" => "\xE2\x80\xA0",
715        "\x87" => "\xE2\x80\xA1",
716        "\x89" => "\xE2\x80\xB0",
717        "\x8A" => "\xC5\xA0",
718        "\x8B" => "\xE2\x80\xB9",
719        "\x8C" => "\xC5\x9A",
720        "\x8D" => "\xC5\xA4",
721        "\x8E" => "\xC5\xBD",
722        "\x8F" => "\xC5\xB9",
723        "\x91" => "\xE2\x80\x98",
724        "\x92" => "\xE2\x80\x99",
725        "\x93" => "\xE2\x80\x9C",
726        "\x94" => "\xE2\x80\x9D",
727        "\x95" => "\xE2\x80\xA2",
728        "\x96" => "\xE2\x80\x93",
729        "\x97" => "\xE2\x80\x94",
730        "\x99" => "\xE2\x84\xA2",
731        "\x9A" => "\xC5\xA1",
732        "\x9B" => "\xE2\x80\xBA",
733        "\x9C" => "\xC5\x9B",
734        "\x9D" => "\xC5\xA5",
735        "\x9E" => "\xC5\xBE",
736        "\x9F" => "\xC5\xBA",
737        "\xA0" => "\xC2\xA0",
738        "\xA1" => "\xCB\x87",
739        "\xA2" => "\xCB\x98",
740        "\xA3" => "\xC5\x81",
741        "\xA4" => "\xC2\xA4",
742        "\xA5" => "\xC4\x84",
743        "\xA6" => "\xC2\xA6",
744        "\xA7" => "\xC2\xA7",
745        "\xA8" => "\xC2\xA8",
746        "\xA9" => "\xC2\xA9",
747        "\xAA" => "\xC5\x9E",
748        "\xAB" => "\xC2\xAB",
749        "\xAC" => "\xC2\xAC",
750        "\xAD" => "\xC2\xAD",
751        "\xAE" => "\xC2\xAE",
752        "\xAF" => "\xC5\xBB",
753        "\xB0" => "\xC2\xB0",
754        "\xB1" => "\xC2\xB1",
755        "\xB2" => "\xCB\x9B",
756        "\xB3" => "\xC5\x82",
757        "\xB4" => "\xC2\xB4",
758        "\xB5" => "\xC2\xB5",
759        "\xB6" => "\xC2\xB6",
760        "\xB7" => "\xC2\xB7",
761        "\xB8" => "\xC2\xB8",
762        "\xB9" => "\xC4\x85",
763        "\xBA" => "\xC5\x9F",
764        "\xBB" => "\xC2\xBB",
765        "\xBC" => "\xC4\xBD",
766        "\xBD" => "\xCB\x9D",
767        "\xBE" => "\xC4\xBE",
768        "\xBF" => "\xC5\xBC",
769        "\xC0" => "\xC5\x94",
770        "\xC1" => "\xC3\x81",
771        "\xC2" => "\xC3\x82",
772        "\xC3" => "\xC4\x82",
773        "\xC4" => "\xC3\x84",
774        "\xC5" => "\xC4\xB9",
775        "\xC6" => "\xC4\x86",
776        "\xC7" => "\xC3\x87",
777        "\xC8" => "\xC4\x8C",
778        "\xC9" => "\xC3\x89",
779        "\xCA" => "\xC4\x98",
780        "\xCB" => "\xC3\x8B",
781        "\xCC" => "\xC4\x9A",
782        "\xCD" => "\xC3\x8D",
783        "\xCE" => "\xC3\x8E",
784        "\xCF" => "\xC4\x8E",
785        "\xD0" => "\xC4\x90",
786        "\xD1" => "\xC5\x83",
787        "\xD2" => "\xC5\x87",
788        "\xD3" => "\xC3\x93",
789        "\xD4" => "\xC3\x94",
790        "\xD5" => "\xC5\x90",
791        "\xD6" => "\xC3\x96",
792        "\xD7" => "\xC3\x97",
793        "\xD8" => "\xC5\x98",
794        "\xD9" => "\xC5\xAE",
795        "\xDA" => "\xC3\x9A",
796        "\xDB" => "\xC5\xB0",
797        "\xDC" => "\xC3\x9C",
798        "\xDD" => "\xC3\x9D",
799        "\xDE" => "\xC5\xA2",
800        "\xDF" => "\xC3\x9F",
801        "\xE0" => "\xC5\x95",
802        "\xE1" => "\xC3\xA1",
803        "\xE2" => "\xC3\xA2",
804        "\xE3" => "\xC4\x83",
805        "\xE4" => "\xC3\xA4",
806        "\xE5" => "\xC4\xBA",
807        "\xE6" => "\xC4\x87",
808        "\xE7" => "\xC3\xA7",
809        "\xE8" => "\xC4\x8D",
810        "\xE9" => "\xC3\xA9",
811        "\xEA" => "\xC4\x99",
812        "\xEB" => "\xC3\xAB",
813        "\xEC" => "\xC4\x9B",
814        "\xED" => "\xC3\xAD",
815        "\xEE" => "\xC3\xAE",
816        "\xEF" => "\xC4\x8F",
817        "\xF0" => "\xC4\x91",
818        "\xF1" => "\xC5\x84",
819        "\xF2" => "\xC5\x88",
820        "\xF3" => "\xC3\xB3",
821        "\xF4" => "\xC3\xB4",
822        "\xF5" => "\xC5\x91",
823        "\xF6" => "\xC3\xB6",
824        "\xF7" => "\xC3\xB7",
825        "\xF8" => "\xC5\x99",
826        "\xF9" => "\xC5\xAF",
827        "\xFA" => "\xC3\xBA",
828        "\xFB" => "\xC5\xB1",
829        "\xFC" => "\xC3\xBC",
830        "\xFD" => "\xC3\xBD",
831        "\xFE" => "\xC5\xA3",
832        "\xFF" => "\xCB\x99",
833    );
834    return strtr($string, $transform);
835}
836
837function cp1251($string)
838{
839    static $transform = array(
840        "\x80" => "\xD0\x82",
841        "\x81" => "\xD0\x83",
842        "\x82" => "\xE2\x80\x9A",
843        "\x83" => "\xD1\x93",
844        "\x84" => "\xE2\x80\x9E",
845        "\x85" => "\xE2\x80\xA6",
846        "\x86" => "\xE2\x80\xA0",
847        "\x87" => "\xE2\x80\xA1",
848        "\x88" => "\xE2\x82\xAC",
849        "\x89" => "\xE2\x80\xB0",
850        "\x8A" => "\xD0\x89",
851        "\x8B" => "\xE2\x80\xB9",
852        "\x8C" => "\xD0\x8A",
853        "\x8D" => "\xD0\x8C",
854        "\x8E" => "\xD0\x8B",
855        "\x8F" => "\xD0\x8F",
856        "\x90" => "\xD1\x92",
857        "\x91" => "\xE2\x80\x98",
858        "\x92" => "\xE2\x80\x99",
859        "\x93" => "\xE2\x80\x9C",
860        "\x94" => "\xE2\x80\x9D",
861        "\x95" => "\xE2\x80\xA2",
862        "\x96" => "\xE2\x80\x93",
863        "\x97" => "\xE2\x80\x94",
864        "\x99" => "\xE2\x84\xA2",
865        "\x9A" => "\xD1\x99",
866        "\x9B" => "\xE2\x80\xBA",
867        "\x9C" => "\xD1\x9A",
868        "\x9D" => "\xD1\x9C",
869        "\x9E" => "\xD1\x9B",
870        "\x9F" => "\xD1\x9F",
871        "\xA0" => "\xC2\xA0",
872        "\xA1" => "\xD0\x8E",
873        "\xA2" => "\xD1\x9E",
874        "\xA3" => "\xD0\x88",
875        "\xA4" => "\xC2\xA4",
876        "\xA5" => "\xD2\x90",
877        "\xA6" => "\xC2\xA6",
878        "\xA7" => "\xC2\xA7",
879        "\xA8" => "\xD0\x81",
880        "\xA9" => "\xC2\xA9",
881        "\xAA" => "\xD0\x84",
882        "\xAB" => "\xC2\xAB",
883        "\xAC" => "\xC2\xAC",
884        "\xAD" => "\xC2\xAD",
885        "\xAE" => "\xC2\xAE",
886        "\xAF" => "\xD0\x87",
887        "\xB0" => "\xC2\xB0",
888        "\xB1" => "\xC2\xB1",
889        "\xB2" => "\xD0\x86",
890        "\xB3" => "\xD1\x96",
891        "\xB4" => "\xD2\x91",
892        "\xB5" => "\xC2\xB5",
893        "\xB6" => "\xC2\xB6",
894        "\xB7" => "\xC2\xB7",
895        "\xB8" => "\xD1\x91",
896        "\xB9" => "\xE2\x84\x96",
897        "\xBA" => "\xD1\x94",
898        "\xBB" => "\xC2\xBB",
899        "\xBC" => "\xD1\x98",
900        "\xBD" => "\xD0\x85",
901        "\xBE" => "\xD1\x95",
902        "\xBF" => "\xD1\x97",
903        "\xC0" => "\xD0\x90",
904        "\xC1" => "\xD0\x91",
905        "\xC2" => "\xD0\x92",
906        "\xC3" => "\xD0\x93",
907        "\xC4" => "\xD0\x94",
908        "\xC5" => "\xD0\x95",
909        "\xC6" => "\xD0\x96",
910        "\xC7" => "\xD0\x97",
911        "\xC8" => "\xD0\x98",
912        "\xC9" => "\xD0\x99",
913        "\xCA" => "\xD0\x9A",
914        "\xCB" => "\xD0\x9B",
915        "\xCC" => "\xD0\x9C",
916        "\xCD" => "\xD0\x9D",
917        "\xCE" => "\xD0\x9E",
918        "\xCF" => "\xD0\x9F",
919        "\xD0" => "\xD0\xA0",
920        "\xD1" => "\xD0\xA1",
921        "\xD2" => "\xD0\xA2",
922        "\xD3" => "\xD0\xA3",
923        "\xD4" => "\xD0\xA4",
924        "\xD5" => "\xD0\xA5",
925        "\xD6" => "\xD0\xA6",
926        "\xD7" => "\xD0\xA7",
927        "\xD8" => "\xD0\xA8",
928        "\xD9" => "\xD0\xA9",
929        "\xDA" => "\xD0\xAA",
930        "\xDB" => "\xD0\xAB",
931        "\xDC" => "\xD0\xAC",
932        "\xDD" => "\xD0\xAD",
933        "\xDE" => "\xD0\xAE",
934        "\xDF" => "\xD0\xAF",
935        "\xE0" => "\xD0\xB0",
936        "\xE1" => "\xD0\xB1",
937        "\xE2" => "\xD0\xB2",
938        "\xE3" => "\xD0\xB3",
939        "\xE4" => "\xD0\xB4",
940        "\xE5" => "\xD0\xB5",
941        "\xE6" => "\xD0\xB6",
942        "\xE7" => "\xD0\xB7",
943        "\xE8" => "\xD0\xB8",
944        "\xE9" => "\xD0\xB9",
945        "\xEA" => "\xD0\xBA",
946        "\xEB" => "\xD0\xBB",
947        "\xEC" => "\xD0\xBC",
948        "\xED" => "\xD0\xBD",
949        "\xEE" => "\xD0\xBE",
950        "\xEF" => "\xD0\xBF",
951        "\xF0" => "\xD1\x80",
952        "\xF1" => "\xD1\x81",
953        "\xF2" => "\xD1\x82",
954        "\xF3" => "\xD1\x83",
955        "\xF4" => "\xD1\x84",
956        "\xF5" => "\xD1\x85",
957        "\xF6" => "\xD1\x86",
958        "\xF7" => "\xD1\x87",
959        "\xF8" => "\xD1\x88",
960        "\xF9" => "\xD1\x89",
961        "\xFA" => "\xD1\x8A",
962        "\xFB" => "\xD1\x8B",
963        "\xFC" => "\xD1\x8C",
964        "\xFD" => "\xD1\x8D",
965        "\xFE" => "\xD1\x8E",
966        "\xFF" => "\xD1\x8F",
967    );
968    return strtr($string, $transform);
969}
970
971function cp1252($string)
972{
973    static $transform = array(
974        "\xC2\x80" => "\xE2\x82\xAC",
975        "\xC2\x82" => "\xE2\x80\x9A",
976        "\xC2\x83" => "\xC6\x92",
977        "\xC2\x84" => "\xE2\x80\x9E",
978        "\xC2\x85" => "\xE2\x80\xA6",
979        "\xC2\x86" => "\xE2\x80\xA0",
980        "\xC2\x87" => "\xE2\x80\xA1",
981        "\xC2\x88" => "\xCB\x86",
982        "\xC2\x89" => "\xE2\x80\xB0",
983        "\xC2\x8A" => "\xC5\xA0",
984        "\xC2\x8B" => "\xE2\x80\xB9",
985        "\xC2\x8C" => "\xC5\x92",
986        "\xC2\x8E" => "\xC5\xBD",
987        "\xC2\x91" => "\xE2\x80\x98",
988        "\xC2\x92" => "\xE2\x80\x99",
989        "\xC2\x93" => "\xE2\x80\x9C",
990        "\xC2\x94" => "\xE2\x80\x9D",
991        "\xC2\x95" => "\xE2\x80\xA2",
992        "\xC2\x96" => "\xE2\x80\x93",
993        "\xC2\x97" => "\xE2\x80\x94",
994        "\xC2\x98" => "\xCB\x9C",
995        "\xC2\x99" => "\xE2\x84\xA2",
996        "\xC2\x9A" => "\xC5\xA1",
997        "\xC2\x9B" => "\xE2\x80\xBA",
998        "\xC2\x9C" => "\xC5\x93",
999        "\xC2\x9E" => "\xC5\xBE",
1000        "\xC2\x9F" => "\xC5\xB8"
1001    );
1002    return strtr(utf8_encode($string), $transform);
1003}
1004
1005function cp1254($string)
1006{
1007    static $transform = array(
1008        "\xC2\x80" => "\xE2\x82\xAC",
1009        "\xC2\x82" => "\xE2\x80\x9A",
1010        "\xC2\x83" => "\xC6\x92",
1011        "\xC2\x84" => "\xE2\x80\x9E",
1012        "\xC2\x85" => "\xE2\x80\xA6",
1013        "\xC2\x86" => "\xE2\x80\xA0",
1014        "\xC2\x87" => "\xE2\x80\xA1",
1015        "\xC2\x88" => "\xCB\x86",
1016        "\xC2\x89" => "\xE2\x80\xB0",
1017        "\xC2\x8A" => "\xC5\xA0",
1018        "\xC2\x8B" => "\xE2\x80\xB9",
1019        "\xC2\x8C" => "\xC5\x92",
1020        "\xC2\x91" => "\xE2\x80\x98",
1021        "\xC2\x92" => "\xE2\x80\x99",
1022        "\xC2\x93" => "\xE2\x80\x9C",
1023        "\xC2\x94" => "\xE2\x80\x9D",
1024        "\xC2\x95" => "\xE2\x80\xA2",
1025        "\xC2\x96" => "\xE2\x80\x93",
1026        "\xC2\x97" => "\xE2\x80\x94",
1027        "\xC2\x98" => "\xCB\x9C",
1028        "\xC2\x99" => "\xE2\x84\xA2",
1029        "\xC2\x9A" => "\xC5\xA1",
1030        "\xC2\x9B" => "\xE2\x80\xBA",
1031        "\xC2\x9C" => "\xC5\x93",
1032        "\xC2\x9F" => "\xC5\xB8",
1033        "\xC3\x90" => "\xC4\x9E",
1034        "\xC3\x9D" => "\xC4\xB0",
1035        "\xC3\x9E" => "\xC5\x9E",
1036        "\xC3\xB0" => "\xC4\x9F",
1037        "\xC3\xBD" => "\xC4\xB1",
1038        "\xC3\xBE" => "\xC5\x9F",
1039    );
1040    return strtr(utf8_encode($string), $transform);
1041}
1042
1043function cp1255($string)
1044{
1045    static $transform = array(
1046        "\x80" => "\xE2\x82\xAC",
1047        "\x82" => "\xE2\x80\x9A",
1048        "\x83" => "\xC6\x92",
1049        "\x84" => "\xE2\x80\x9E",
1050        "\x85" => "\xE2\x80\xA6",
1051        "\x86" => "\xE2\x80\xA0",
1052        "\x87" => "\xE2\x80\xA1",
1053        "\x88" => "\xCB\x86",
1054        "\x89" => "\xE2\x80\xB0",
1055        "\x8B" => "\xE2\x80\xB9",
1056        "\x91" => "\xE2\x80\x98",
1057        "\x92" => "\xE2\x80\x99",
1058        "\x93" => "\xE2\x80\x9C",
1059        "\x94" => "\xE2\x80\x9D",
1060        "\x95" => "\xE2\x80\xA2",
1061        "\x96" => "\xE2\x80\x93",
1062        "\x97" => "\xE2\x80\x94",
1063        "\x98" => "\xCB\x9C",
1064        "\x99" => "\xE2\x84\xA2",
1065        "\x9B" => "\xE2\x80\xBA",
1066        "\xA0" => "\xC2\xA0",
1067        "\xA1" => "\xC2\xA1",
1068        "\xA2" => "\xC2\xA2",
1069        "\xA3" => "\xC2\xA3",
1070        "\xA4" => "\xE2\x82\xAA",
1071        "\xA5" => "\xC2\xA5",
1072        "\xA6" => "\xC2\xA6",
1073        "\xA7" => "\xC2\xA7",
1074        "\xA8" => "\xC2\xA8",
1075        "\xA9" => "\xC2\xA9",
1076        "\xAA" => "\xC3\x97",
1077        "\xAB" => "\xC2\xAB",
1078        "\xAC" => "\xC2\xAC",
1079        "\xAD" => "\xC2\xAD",
1080        "\xAE" => "\xC2\xAE",
1081        "\xAF" => "\xC2\xAF",
1082        "\xB0" => "\xC2\xB0",
1083        "\xB1" => "\xC2\xB1",
1084        "\xB2" => "\xC2\xB2",
1085        "\xB3" => "\xC2\xB3",
1086        "\xB4" => "\xC2\xB4",
1087        "\xB5" => "\xC2\xB5",
1088        "\xB6" => "\xC2\xB6",
1089        "\xB7" => "\xC2\xB7",
1090        "\xB8" => "\xC2\xB8",
1091        "\xB9" => "\xC2\xB9",
1092        "\xBA" => "\xC3\xB7",
1093        "\xBB" => "\xC2\xBB",
1094        "\xBC" => "\xC2\xBC",
1095        "\xBD" => "\xC2\xBD",
1096        "\xBE" => "\xC2\xBE",
1097        "\xBF" => "\xC2\xBF",
1098        "\xC0" => "\xD6\xB0",
1099        "\xC1" => "\xD6\xB1",
1100        "\xC2" => "\xD6\xB2",
1101        "\xC3" => "\xD6\xB3",
1102        "\xC4" => "\xD6\xB4",
1103        "\xC5" => "\xD6\xB5",
1104        "\xC6" => "\xD6\xB6",
1105        "\xC7" => "\xD6\xB7",
1106        "\xC8" => "\xD6\xB8",
1107        "\xC9" => "\xD6\xB9",
1108        "\xCB" => "\xD6\xBB",
1109        "\xCC" => "\xD6\xBC",
1110        "\xCD" => "\xD6\xBD",
1111        "\xCE" => "\xD6\xBE",
1112        "\xCF" => "\xD6\xBF",
1113        "\xD0" => "\xD7\x80",
1114        "\xD1" => "\xD7\x81",
1115        "\xD2" => "\xD7\x82",
1116        "\xD3" => "\xD7\x83",
1117        "\xD4" => "\xD7\xB0",
1118        "\xD5" => "\xD7\xB1",
1119        "\xD6" => "\xD7\xB2",
1120        "\xD7" => "\xD7\xB3",
1121        "\xD8" => "\xD7\xB4",
1122        "\xE0" => "\xD7\x90",
1123        "\xE1" => "\xD7\x91",
1124        "\xE2" => "\xD7\x92",
1125        "\xE3" => "\xD7\x93",
1126        "\xE4" => "\xD7\x94",
1127        "\xE5" => "\xD7\x95",
1128        "\xE6" => "\xD7\x96",
1129        "\xE7" => "\xD7\x97",
1130        "\xE8" => "\xD7\x98",
1131        "\xE9" => "\xD7\x99",
1132        "\xEA" => "\xD7\x9A",
1133        "\xEB" => "\xD7\x9B",
1134        "\xEC" => "\xD7\x9C",
1135        "\xED" => "\xD7\x9D",
1136        "\xEE" => "\xD7\x9E",
1137        "\xEF" => "\xD7\x9F",
1138        "\xF0" => "\xD7\xA0",
1139        "\xF1" => "\xD7\xA1",
1140        "\xF2" => "\xD7\xA2",
1141        "\xF3" => "\xD7\xA3",
1142        "\xF4" => "\xD7\xA4",
1143        "\xF5" => "\xD7\xA5",
1144        "\xF6" => "\xD7\xA6",
1145        "\xF7" => "\xD7\xA7",
1146        "\xF8" => "\xD7\xA8",
1147        "\xF9" => "\xD7\xA9",
1148        "\xFA" => "\xD7\xAA",
1149        "\xFD" => "\xE2\x80\x8E",
1150        "\xFE" => "\xE2\x80\x8F",
1151    );
1152    return strtr($string, $transform);
1153}
1154
1155function cp1256($string)
1156{
1157    static $transform = array(
1158        "\x80" => "\xE2\x82\xAC",
1159        "\x81" => "\xD9\xBE",
1160        "\x82" => "\xE2\x80\x9A",
1161        "\x83" => "\xC6\x92",
1162        "\x84" => "\xE2\x80\x9E",
1163        "\x85" => "\xE2\x80\xA6",
1164        "\x86" => "\xE2\x80\xA0",
1165        "\x87" => "\xE2\x80\xA1",
1166        "\x88" => "\xCB\x86",
1167        "\x89" => "\xE2\x80\xB0",
1168        "\x8A" => "\xD9\xB9",
1169        "\x8B" => "\xE2\x80\xB9",
1170        "\x8C" => "\xC5\x92",
1171        "\x8D" => "\xDA\x86",
1172        "\x8E" => "\xDA\x98",
1173        "\x8F" => "\xDA\x88",
1174        "\x90" => "\xDA\xAF",
1175        "\x91" => "\xE2\x80\x98",
1176        "\x92" => "\xE2\x80\x99",
1177        "\x93" => "\xE2\x80\x9C",
1178        "\x94" => "\xE2\x80\x9D",
1179        "\x95" => "\xE2\x80\xA2",
1180        "\x96" => "\xE2\x80\x93",
1181        "\x97" => "\xE2\x80\x94",
1182        "\x98" => "\xDA\xA9",
1183        "\x99" => "\xE2\x84\xA2",
1184        "\x9A" => "\xDA\x91",
1185        "\x9B" => "\xE2\x80\xBA",
1186        "\x9C" => "\xC5\x93",
1187        "\x9D" => "\xE2\x80\x8C",
1188        "\x9E" => "\xE2\x80\x8D",
1189        "\x9F" => "\xDA\xBA",
1190        "\xA0" => "\xC2\xA0",
1191        "\xA1" => "\xD8\x8C",
1192        "\xA2" => "\xC2\xA2",
1193        "\xA3" => "\xC2\xA3",
1194        "\xA4" => "\xC2\xA4",
1195        "\xA5" => "\xC2\xA5",
1196        "\xA6" => "\xC2\xA6",
1197        "\xA7" => "\xC2\xA7",
1198        "\xA8" => "\xC2\xA8",
1199        "\xA9" => "\xC2\xA9",
1200        "\xAA" => "\xDA\xBE",
1201        "\xAB" => "\xC2\xAB",
1202        "\xAC" => "\xC2\xAC",
1203        "\xAD" => "\xC2\xAD",
1204        "\xAE" => "\xC2\xAE",
1205        "\xAF" => "\xC2\xAF",
1206        "\xB0" => "\xC2\xB0",
1207        "\xB1" => "\xC2\xB1",
1208        "\xB2" => "\xC2\xB2",
1209        "\xB3" => "\xC2\xB3",
1210        "\xB4" => "\xC2\xB4",
1211        "\xB5" => "\xC2\xB5",
1212        "\xB6" => "\xC2\xB6",
1213        "\xB7" => "\xC2\xB7",
1214        "\xB8" => "\xC2\xB8",
1215        "\xB9" => "\xC2\xB9",
1216        "\xBA" => "\xD8\x9B",
1217        "\xBB" => "\xC2\xBB",
1218        "\xBC" => "\xC2\xBC",
1219        "\xBD" => "\xC2\xBD",
1220        "\xBE" => "\xC2\xBE",
1221        "\xBF" => "\xD8\x9F",
1222        "\xC0" => "\xDB\x81",
1223        "\xC1" => "\xD8\xA1",
1224        "\xC2" => "\xD8\xA2",
1225        "\xC3" => "\xD8\xA3",
1226        "\xC4" => "\xD8\xA4",
1227        "\xC5" => "\xD8\xA5",
1228        "\xC6" => "\xD8\xA6",
1229        "\xC7" => "\xD8\xA7",
1230        "\xC8" => "\xD8\xA8",
1231        "\xC9" => "\xD8\xA9",
1232        "\xCA" => "\xD8\xAA",
1233        "\xCB" => "\xD8\xAB",
1234        "\xCC" => "\xD8\xAC",
1235        "\xCD" => "\xD8\xAD",
1236        "\xCE" => "\xD8\xAE",
1237        "\xCF" => "\xD8\xAF",
1238        "\xD0" => "\xD8\xB0",
1239        "\xD1" => "\xD8\xB1",
1240        "\xD2" => "\xD8\xB2",
1241        "\xD3" => "\xD8\xB3",
1242        "\xD4" => "\xD8\xB4",
1243        "\xD5" => "\xD8\xB5",
1244        "\xD6" => "\xD8\xB6",
1245        "\xD7" => "\xC3\x97",
1246        "\xD8" => "\xD8\xB7",
1247        "\xD9" => "\xD8\xB8",
1248        "\xDA" => "\xD8\xB9",
1249        "\xDB" => "\xD8\xBA",
1250        "\xDC" => "\xD9\x80",
1251        "\xDD" => "\xD9\x81",
1252        "\xDE" => "\xD9\x82",
1253        "\xDF" => "\xD9\x83",
1254        "\xE0" => "\xC3\xA0",
1255        "\xE1" => "\xD9\x84",
1256        "\xE2" => "\xC3\xA2",
1257        "\xE3" => "\xD9\x85",
1258        "\xE4" => "\xD9\x86",
1259        "\xE5" => "\xD9\x87",
1260        "\xE6" => "\xD9\x88",
1261        "\xE7" => "\xC3\xA7",
1262        "\xE8" => "\xC3\xA8",
1263        "\xE9" => "\xC3\xA9",
1264        "\xEA" => "\xC3\xAA",
1265        "\xEB" => "\xC3\xAB",
1266        "\xEC" => "\xD9\x89",
1267        "\xED" => "\xD9\x8A",
1268        "\xEE" => "\xC3\xAE",
1269        "\xEF" => "\xC3\xAF",
1270        "\xF0" => "\xD9\x8B",
1271        "\xF1" => "\xD9\x8C",
1272        "\xF2" => "\xD9\x8D",
1273        "\xF3" => "\xD9\x8E",
1274        "\xF4" => "\xC3\xB4",
1275        "\xF5" => "\xD9\x8F",
1276        "\xF6" => "\xD9\x90",
1277        "\xF7" => "\xC3\xB7",
1278        "\xF8" => "\xD9\x91",
1279        "\xF9" => "\xC3\xB9",
1280        "\xFA" => "\xD9\x92",
1281        "\xFB" => "\xC3\xBB",
1282        "\xFC" => "\xC3\xBC",
1283        "\xFD" => "\xE2\x80\x8E",
1284        "\xFE" => "\xE2\x80\x8F",
1285        "\xFF" => "\xDB\x92",
1286    );
1287    return strtr($string, $transform);
1288}
1289
1290function cp1257($string)
1291{
1292    static $transform = array(
1293        "\x80" => "\xE2\x82\xAC",
1294        "\x82" => "\xE2\x80\x9A",
1295        "\x84" => "\xE2\x80\x9E",
1296        "\x85" => "\xE2\x80\xA6",
1297        "\x86" => "\xE2\x80\xA0",
1298        "\x87" => "\xE2\x80\xA1",
1299        "\x89" => "\xE2\x80\xB0",
1300        "\x8B" => "\xE2\x80\xB9",
1301        "\x8D" => "\xC2\xA8",
1302        "\x8E" => "\xCB\x87",
1303        "\x8F" => "\xC2\xB8",
1304        "\x91" => "\xE2\x80\x98",
1305        "\x92" => "\xE2\x80\x99",
1306        "\x93" => "\xE2\x80\x9C",
1307        "\x94" => "\xE2\x80\x9D",
1308        "\x95" => "\xE2\x80\xA2",
1309        "\x96" => "\xE2\x80\x93",
1310        "\x97" => "\xE2\x80\x94",
1311        "\x99" => "\xE2\x84\xA2",
1312        "\x9B" => "\xE2\x80\xBA",
1313        "\x9D" => "\xC2\xAF",
1314        "\x9E" => "\xCB\x9B",
1315        "\xA0" => "\xC2\xA0",
1316        "\xA2" => "\xC2\xA2",
1317        "\xA3" => "\xC2\xA3",
1318        "\xA4" => "\xC2\xA4",
1319        "\xA6" => "\xC2\xA6",
1320        "\xA7" => "\xC2\xA7",
1321        "\xA8" => "\xC3\x98",
1322        "\xA9" => "\xC2\xA9",
1323        "\xAA" => "\xC5\x96",
1324        "\xAB" => "\xC2\xAB",
1325        "\xAC" => "\xC2\xAC",
1326        "\xAD" => "\xC2\xAD",
1327        "\xAE" => "\xC2\xAE",
1328        "\xAF" => "\xC3\x86",
1329        "\xB0" => "\xC2\xB0",
1330        "\xB1" => "\xC2\xB1",
1331        "\xB2" => "\xC2\xB2",
1332        "\xB3" => "\xC2\xB3",
1333        "\xB4" => "\xC2\xB4",
1334        "\xB5" => "\xC2\xB5",
1335        "\xB6" => "\xC2\xB6",
1336        "\xB7" => "\xC2\xB7",
1337        "\xB8" => "\xC3\xB8",
1338        "\xB9" => "\xC2\xB9",
1339        "\xBA" => "\xC5\x97",
1340        "\xBB" => "\xC2\xBB",
1341        "\xBC" => "\xC2\xBC",
1342        "\xBD" => "\xC2\xBD",
1343        "\xBE" => "\xC2\xBE",
1344        "\xBF" => "\xC3\xA6",
1345        "\xC0" => "\xC4\x84",
1346        "\xC1" => "\xC4\xAE",
1347        "\xC2" => "\xC4\x80",
1348        "\xC3" => "\xC4\x86",
1349        "\xC4" => "\xC3\x84",
1350        "\xC5" => "\xC3\x85",
1351        "\xC6" => "\xC4\x98",
1352        "\xC7" => "\xC4\x92",
1353        "\xC8" => "\xC4\x8C",
1354        "\xC9" => "\xC3\x89",
1355        "\xCA" => "\xC5\xB9",
1356        "\xCB" => "\xC4\x96",
1357        "\xCC" => "\xC4\xA2",
1358        "\xCD" => "\xC4\xB6",
1359        "\xCE" => "\xC4\xAA",
1360        "\xCF" => "\xC4\xBB",
1361        "\xD0" => "\xC5\xA0",
1362        "\xD1" => "\xC5\x83",
1363        "\xD2" => "\xC5\x85",
1364        "\xD3" => "\xC3\x93",
1365        "\xD4" => "\xC5\x8C",
1366        "\xD5" => "\xC3\x95",
1367        "\xD6" => "\xC3\x96",
1368        "\xD7" => "\xC3\x97",
1369        "\xD8" => "\xC5\xB2",
1370        "\xD9" => "\xC5\x81",
1371        "\xDA" => "\xC5\x9A",
1372        "\xDB" => "\xC5\xAA",
1373        "\xDC" => "\xC3\x9C",
1374        "\xDD" => "\xC5\xBB",
1375        "\xDE" => "\xC5\xBD",
1376        "\xDF" => "\xC3\x9F",
1377        "\xE0" => "\xC4\x85",
1378        "\xE1" => "\xC4\xAF",
1379        "\xE2" => "\xC4\x81",
1380        "\xE3" => "\xC4\x87",
1381        "\xE4" => "\xC3\xA4",
1382        "\xE5" => "\xC3\xA5",
1383        "\xE6" => "\xC4\x99",
1384        "\xE7" => "\xC4\x93",
1385        "\xE8" => "\xC4\x8D",
1386        "\xE9" => "\xC3\xA9",
1387        "\xEA" => "\xC5\xBA",
1388        "\xEB" => "\xC4\x97",
1389        "\xEC" => "\xC4\xA3",
1390        "\xED" => "\xC4\xB7",
1391        "\xEE" => "\xC4\xAB",
1392        "\xEF" => "\xC4\xBC",
1393        "\xF0" => "\xC5\xA1",
1394        "\xF1" => "\xC5\x84",
1395        "\xF2" => "\xC5\x86",
1396        "\xF3" => "\xC3\xB3",
1397        "\xF4" => "\xC5\x8D",
1398        "\xF5" => "\xC3\xB5",
1399        "\xF6" => "\xC3\xB6",
1400        "\xF7" => "\xC3\xB7",
1401        "\xF8" => "\xC5\xB3",
1402        "\xF9" => "\xC5\x82",
1403        "\xFA" => "\xC5\x9B",
1404        "\xFB" => "\xC5\xAB",
1405        "\xFC" => "\xC3\xBC",
1406        "\xFD" => "\xC5\xBC",
1407        "\xFE" => "\xC5\xBE",
1408        "\xFF" => "\xCB\x99",
1409    );
1410    return strtr($string, $transform);
1411}
1412
1413function utf8_to_cp1252($string)
1414{
1415    static $transform = array(
1416        "\xE2\x82\xAC" => "\x80",
1417        "\xE2\x80\x9A" => "\x82",
1418        "\xC6\x92" => "\x83",
1419        "\xE2\x80\x9E" => "\x84",
1420        "\xE2\x80\xA6" => "\x85",
1421        "\xE2\x80\xA0" => "\x86",
1422        "\xE2\x80\xA1" => "\x87",
1423        "\xCB\x86" => "\x88",
1424        "\xE2\x80\xB0" => "\x89",
1425        "\xC5\xA0" => "\x8A",
1426        "\xE2\x80\xB9" => "\x8B",
1427        "\xC5\x92" => "\x8C",
1428        "\xC5\xBD" => "\x8E",
1429        "\xE2\x80\x98" => "\x91",
1430        "\xE2\x80\x99" => "\x92",
1431        "\xE2\x80\x9C" => "\x93",
1432        "\xE2\x80\x9D" => "\x94",
1433        "\xE2\x80\xA2" => "\x95",
1434        "\xE2\x80\x93" => "\x96",
1435        "\xE2\x80\x94" => "\x97",
1436        "\xCB\x9C" => "\x98",
1437        "\xE2\x84\xA2" => "\x99",
1438        "\xC5\xA1" => "\x9A",
1439        "\xE2\x80\xBA" => "\x9B",
1440        "\xC5\x93" => "\x9C",
1441        "\xC5\xBE" => "\x9E",
1442        "\xC5\xB8" => "\x9F",
1443        "\xC2\xA0" => "\xA0",
1444        "\xC2\xA1" => "\xA1",
1445        "\xC2\xA2" => "\xA2",
1446        "\xC2\xA3" => "\xA3",
1447        "\xC2\xA4" => "\xA4",
1448        "\xC2\xA5" => "\xA5",
1449        "\xC2\xA6" => "\xA6",
1450        "\xC2\xA7" => "\xA7",
1451        "\xC2\xA8" => "\xA8",
1452        "\xC2\xA9" => "\xA9",
1453        "\xC2\xAA" => "\xAA",
1454        "\xC2\xAB" => "\xAB",
1455        "\xC2\xAC" => "\xAC",
1456        "\xC2\xAD" => "\xAD",
1457        "\xC2\xAE" => "\xAE",
1458        "\xC2\xAF" => "\xAF",
1459        "\xC2\xB0" => "\xB0",
1460        "\xC2\xB1" => "\xB1",
1461        "\xC2\xB2" => "\xB2",
1462        "\xC2\xB3" => "\xB3",
1463        "\xC2\xB4" => "\xB4",
1464        "\xC2\xB5" => "\xB5",
1465        "\xC2\xB6" => "\xB6",
1466        "\xC2\xB7" => "\xB7",
1467        "\xC2\xB8" => "\xB8",
1468        "\xC2\xB9" => "\xB9",
1469        "\xC2\xBA" => "\xBA",
1470        "\xC2\xBB" => "\xBB",
1471        "\xC2\xBC" => "\xBC",
1472        "\xC2\xBD" => "\xBD",
1473        "\xC2\xBE" => "\xBE",
1474        "\xC2\xBF" => "\xBF",
1475        "\xC3\x80" => "\xC0",
1476        "\xC3\x81" => "\xC1",
1477        "\xC3\x82" => "\xC2",
1478        "\xC3\x83" => "\xC3",
1479        "\xC3\x84" => "\xC4",
1480        "\xC3\x85" => "\xC5",
1481        "\xC3\x86" => "\xC6",
1482        "\xC3\x87" => "\xC7",
1483        "\xC3\x88" => "\xC8",
1484        "\xC3\x89" => "\xC9",
1485        "\xC3\x8A" => "\xCA",
1486        "\xC3\x8B" => "\xCB",
1487        "\xC3\x8C" => "\xCC",
1488        "\xC3\x8D" => "\xCD",
1489        "\xC3\x8E" => "\xCE",
1490        "\xC3\x8F" => "\xCF",
1491        "\xC3\x90" => "\xD0",
1492        "\xC3\x91" => "\xD1",
1493        "\xC3\x92" => "\xD2",
1494        "\xC3\x93" => "\xD3",
1495        "\xC3\x94" => "\xD4",
1496        "\xC3\x95" => "\xD5",
1497        "\xC3\x96" => "\xD6",
1498        "\xC3\x97" => "\xD7",
1499        "\xC3\x98" => "\xD8",
1500        "\xC3\x99" => "\xD9",
1501        "\xC3\x9A" => "\xDA",
1502        "\xC3\x9B" => "\xDB",
1503        "\xC3\x9C" => "\xDC",
1504        "\xC3\x9D" => "\xDD",
1505        "\xC3\x9E" => "\xDE",
1506        "\xC3\x9F" => "\xDF",
1507        "\xC3\xA0" => "\xE0",
1508        "\xC3\xA1" => "\xE1",
1509        "\xC3\xA2" => "\xE2",
1510        "\xC3\xA3" => "\xE3",
1511        "\xC3\xA4" => "\xE4",
1512        "\xC3\xA5" => "\xE5",
1513        "\xC3\xA6" => "\xE6",
1514        "\xC3\xA7" => "\xE7",
1515        "\xC3\xA8" => "\xE8",
1516        "\xC3\xA9" => "\xE9",
1517        "\xC3\xAA" => "\xEA",
1518        "\xC3\xAB" => "\xEB",
1519        "\xC3\xAC" => "\xEC",
1520        "\xC3\xAD" => "\xED",
1521        "\xC3\xAE" => "\xEE",
1522        "\xC3\xAF" => "\xEF",
1523        "\xC3\xB0" => "\xF0",
1524        "\xC3\xB1" => "\xF1",
1525        "\xC3\xB2" => "\xF2",
1526        "\xC3\xB3" => "\xF3",
1527        "\xC3\xB4" => "\xF4",
1528        "\xC3\xB5" => "\xF5",
1529        "\xC3\xB6" => "\xF6",
1530        "\xC3\xB7" => "\xF7",
1531        "\xC3\xB8" => "\xF8",
1532        "\xC3\xB9" => "\xF9",
1533        "\xC3\xBA" => "\xFA",
1534        "\xC3\xBB" => "\xFB",
1535        "\xC3\xBC" => "\xFC",
1536        "\xC3\xBD" => "\xFD",
1537        "\xC3\xBE" => "\xFE",
1538        "\xC3\xBF" => "\xFF"
1539    );
1540    return strtr($string, $transform);
1541}