![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 223 Pomógł: 1 Dołączył: -- Skąd: Rogożnik /K-ce/ Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Szperałem już chyba wszędzie. nie znalazłem rozwiązania swojego problemu. Postanowiłem więc napisać tutaj. Z racji tego, że serwer na którym mam konto nie obsługuje funkcji iconv(), zmuszony byłem do napisania jej pseudo-funkcji. Zależy mi głównie na synonimie zapisu $text=iconv("ISO-8859-2","UTF-8",$text);. Tak więc zabrałem się do pracy. Napisałem prawie działającą funkcję (w zasadzie to jedna powielona linia): [php:1:424d8945b1]<?php function convertText($text){ $text=str_replace("ą","Ä…",$text); $text=str_replace("ś","Ĺ›",$text); $text=str_replace("ł","Ĺ‚",$text); $text=str_replace("ó","Ăł",$text); $text=str_replace("ź","Ĺş",$text); $text=str_replace("ż","Ĺź",$text); $text=str_replace("ę","Ä™",$text); $text=str_replace("ć","ć",$text); $text=str_replace("ń","Ĺ„",$text); $text=str_replace("Ę","Ä",$text); $text=str_replace("Ó","Ă“",$text); $text=str_replace("Ą","Ä„",$text); $text=str_replace("Ź","Ĺš",$text); $text=str_replace("Ś","Ĺš",$text); $text=str_replace("Ł","Ĺ",$text); $text=str_replace("Ż","Ĺť",$text); $text=str_replace("Ć","Ć",$text); $text=str_replace("Ń","Ĺ",$text); return $text; } ?>[/php:1:424d8945b1] Mój problem polega na tym, że nie konwertuje się litera Ś, gdyż posiada ona taki sam znak kodowy w UTF-8 co litera Ź. W związku z tym zamiast uzyskać wyraz Ślizgać uzyskuje Źlizgać. Nie bardzo wiem gdzie zdobyć informacje o kodowaniu litery Ś w UTF-8 przy odczytaniu przy pomocy ISO-8859-2. Z góry dzięki za pomoc. |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 223 Pomógł: 1 Dołączył: -- Skąd: Rogożnik /K-ce/ Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Czy na prawdę nikt nie potrafi mi pomóc? Może ktoś spotkał się z takim problemem - a raczej jego rozwiązaniem? |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 300 Pomógł: 1 Dołączył: 22.09.2003 Skąd: Czeladź Ostrzeżenie: (0%) ![]() ![]() |
witam. nie wiem czy ci coś to pomoże -> kiedyś miałem problem z dużym (bądź małym - jusz nie pamiętam) "ź". Srałem się z tym nie wiem ile, ale problem okazał się błahy. Otóż niektóre edytory (np. notepad) przy zapisywaniu pliku zamieniają te litery. źle je interpretują poprostu. tak samo sprawa ma się z kopiowaniem (ctrl+c i ctrl+v). sam możesz zobaczyć: skopuj jakiś tekst pod notatnikiem w którym jest ź do jakiegoś nowego dokumentu notatnika i zobaczysz że się skszaniło. robię to pod win98. może to o to chodzi. pozdrawiam.
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 6.05.2003 Skąd: Gdynia, Poland Ostrzeżenie: (0%) ![]() ![]() |
Sprawdź tutaj -> http://webdesign.art.pl/atelier/unicode.html
Powinno pomóc... -------------------- |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 12 Pomógł: 0 Dołączył: 21.07.2003 Ostrzeżenie: (0%) ![]() ![]() |
A co powiedzialbys na to:
Kod $rec = strtr($rec, "xa4x8fxa8x9dxe3xe0x97x8dxbdxa5x86xa9x88xe4xa2x98xabxbe", "xa1xc6xcaxa3xd1xd3xa6x8fxafxb1xe6xeaxb3xf1xf3x9cx9fxbf");
zamiana na odpowiednie znaki w odpowiednim kodowaniu. Dodam tylko, ze rowniez mialem problem z niektorymi znakami. |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 19.07.2025 - 21:09 |