![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 21.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Moja aplikacja bazuje na UTF-8. Baza danych w UTF-8, wszystkie pliki językowe w UTF-8. Wszystko jest pięknie i ślicznie. Zero problemów z polskimi znakami. Jednakże, pojawiła się konieczność eksportu niektórych danych do XML, który musi mieć encoding w ISO-8859-2. Do tego celu wybrałem DomDocument, ponieważ na pierwszy rzut oka dobrze radził on sobie z konwersją no i zachowuje zasady obiektowości. Niestety plik XML został odrzucony przez importującego dane. Podany powód: zbyt duża ilość znaków w jednym z tagów. Zliczając znaki ich ilość była zgodna z dokumentacją, dlatego dobrałem się HexEditorem do wyeksportowanego pliku. Okazało się, że polskie znaki zapisywane są na dwóch bajtach i wyglądają, jak te z UTF-8. Próbowałem ręcznie konwertować plik XML zwrócony jako string (metodą DomDocument::saveXML()) metodą mb_convert_encoding, ale w wyniku otrzymuję (niezależnie od podanego kodowania w parametrze tej funkcji) string kodowany w ASCII, czyli bez polskich znaków. Pytanie: Jak poprawnie zwrócić plik XML posiadający jeden bajt na polski znak, poprawnie zakodowany w ISO-8859-2? PS. Ustawiam nagłówek XML i kodowanie: Z góry dziękuję za pomoc! |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 00:40 |