Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: iso-8859-2 to utf-8
Forum PHP.pl > Forum > Gotowe rozwiązania
Silverstorm
[fixed]
Speed666
ze strony php5.pl

  1. <?php
  2. define('UTF8_TO_ISO88592', 1);
  3. define('ISO88592_TO_UTF8', 2);
  4. define('WIN1250_TO_UTF8', 3);
  5. define('UTF8_TO_WIN1250', 4);
  6. define('ISO88592_TO_WIN1250', 5);
  7. define('WIN1250_TO_ISO88592', 6);
  8.  
  9. // skrypt ze strony http://php5.pl
  10. function plCharset($string, $type = ISO88592_TO_UTF8) {
  11.  
  12. $win2utf = array(
  13. "xb9" => "xc4x85", "xa5" => "xc4x84",
  14. "xe6" => "xc4x87", "xc6" => "xc4x86",
  15. "xea" => "xc4x99", "xca" => "xc4x98",
  16. "xb3" => "xc5x82", "xa3" => "xc5x81",
  17. "xf3" => "xc3xb3", "xd3" => "xc3x93",
  18. "x9c" => "xc5x9b", "x8c" => "xc5x9a",
  19. "x9f" => "xc5xbc", "x8f" => "xc5xbb",
  20. "xbf" => "xc5xba", "xaf" => "xc5xb9",
  21. "xf1" => "xc5x84", "xd1" => "xc5x83"
  22. );
  23. $iso2utf = array(
  24. "xb1" => "xc4x85", "xa1" => "xc4x84",
  25. "xe6" => "xc4x87", "xc6" => "xc4x86",
  26. "xea" => "xc4x99", "xca" => "xc4x98",
  27. "xb3" => "xc5x82", "xa3" => "xc5x81",
  28. "xf3" => "xc3xb3", "xd3" => "xc3x93",
  29. "xb6" => "xc5x9b", "xa6" => "xc5x9a",
  30. "xbc" => "xc5xbc", "xac" => "xc5xbb",
  31. "xbf" => "xc5xba", "xaf" => "xc5xb9",
  32. "xf1" => "xc5x84", "xd1" => "xc5x83"
  33. );
  34.  
  35. if ($type == ISO88592_TO_UTF8)
  36. return strtr($string, $iso2utf);
  37. if ($type == UTF8_TO_ISO88592)
  38. return strtr($string, array_flip($iso2utf));
  39. if ($type == WIN1250_TO_UTF8)
  40. return strtr($string, $win2utf);
  41. if ($type == UTF8_TO_WIN1250)
  42. return strtr($string, array_flip($win2utf));
  43. if ($type == ISO88592_TO_WIN1250)
  44. return strtr($string, "xa1xa6xacxb1xb6xbc",
  45. "xa5x8cx8fxb9x9cx9f");
  46. if ($type == WIN1250_TO_ISO88592)
  47. return strtr($string, "xa5x8cx8fxb9x9cx9f",
  48. "xa1xa6xacxb1xb6xbc");
  49. }
  50. ?>
yavaho
Ten skryp ktory podal @Speed666 ma blad (i na jakiej stronie bym go nie spotka to jest tak samo) Skrypt odwrotnie konwertuje literki "ż" i "ź" w przypadku utf-8
Ponizej poprawna tablica

  1. <?php
  2.  $iso2utf = array(
  3. "xb1" => "xc4x85",
  4. "xa1" => "xc4x84",
  5. "xe6" => "xc4x87",
  6. "xc6" => "xc4x86",
  7. "xea" => "xc4x99",
  8. "xca" => "xc4x98",
  9. "xb3" => "xc5x82",
  10. "xa3" => "xc5x81",
  11. "xf3" => "xc3xb3",
  12. "xd3" => "xc3x93",
  13. "xb6" => "xc5x9b",
  14. "xa6" => "xc5x9a",
  15. "xbf" => "xc5xbc",
  16. "xaf" => "xc5xbb",
  17. "xbc" => "xc5xba",
  18. "xac" => "xc5xb9",
  19. "xf1" => "xc5x84",
  20. "xd1" => "xc5x83"
  21.  );
  22. ?>
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.