![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 190 Pomógł: 1 Dołączył: 20.05.2005 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Witam!
Musze zamienic kodowanie tekstu z UTF-8 na ISO-8859-2 przed zapisem do bazy. Problem w tym, ze ten tekst czesto zawiera nieobslugiwane cudzyslowy skopiowane z Worda, o takie: Cytat „ ” Jak uzywam do konwersji mbstring to zamienia te cudzyslowy na znaki zapytania, a jak uzyje iconv to mi wywali blad ze tekst zawiera nieobslugiwane znaki. Probowalem zamienic te cudzyslowy na zwykle (ktore moge wklepac z klawiatury) za pomoca str_replace, ale Eclipse mi nie chce w ogole zapisac pliku php bo tych znakow nie moze zapisac w kodowaniu ISO. Co z tym zrobic? Jak to zamienic na zwykly cudzyslow? Moge ostatecznie kazac mbstring je usunac za pomoca Kod ini_set('mbstring.substitute_character', 'none'); ale to nie jest dobre wyjscie. Ten post edytował marcini82 19.01.2007, 08:59:48 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 190 Pomógł: 1 Dołączył: 20.05.2005 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Poszukiwane przeze mnie znaki to:
http://www.fileformat.info/info/unicode/char/201e/index.htm http://www.fileformat.info/info/unicode/char/201d/index.htm Chcialbym je zamienic na: http://www.fileformat.info/info/unicode/char/0022/index.htm Niestety, nie udaje mi sie (IMG:http://forum.php.pl/style_emoticons/default/sad.gif) Probowalem tak dla pierwszego znaku: Kod $zamienniki = Array('\xE2\x80\x9E' => '\x22'); $input = strtr($input, $zamienniki); albo tak: Kod $zamienniki = Array('\x201e' => '\x22'); $input = strtr($input, $zamienniki) Wzorowalem sie na przykladzie ghasha i na tym: http://php5.pl/php/konwersja_systemu_kodow..._win1250_i_utf8 Nie dziala. W jakiej postaci mam podac kody znakow, aby zadzialalo? EDIT: Juz wiem: trzeba bylo uzyc podwojnych cudzyslowow: Kod $zamienniki = Array("\xE2\x80\x9E" => "\x22");
Ten post edytował marcini82 25.01.2007, 12:24:12 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 3.10.2025 - 12:10 |