Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP][XML][HTML] iconv a cyrylica, problem z cyrylicą i konwerowaniem iso -> utf -> iso
exood
post
Post #1





Grupa: Zarejestrowani
Postów: 86
Pomógł: 16
Dołączył: 2.12.2009
Skąd: Płock/Warszawa

Ostrzeżenie: (0%)
-----


Witam,
mam problem z kodowaniem. Mam skrypt, który wyciąga dane z xmla przetwarza i wypluwa na stronę. Strona jest w kodowaniu iso-8859-2, tak jak i XML w którym są dane.
Teraz pojawił się problem z cyrylicą, która w tym XML'u się znajduje (dodam dodatkowo, że owa cyrylica jest już zamieniona na encje - bo już kiedyś miałem problem z niektórymi obcymi znakami i było to rozwiązanie, które działało);
Xmla wczytuję za pomocą simplexml_load_file()
Obiekt utworzony przez ta funkcję jest jednak w kodowaniu innym niż iso-8859-2 a mianowicie jest w utf-8, dlatego dane przed wyświetleniem konwertuję za pomocą iconv()
  1. $tekst = $xml -> item -> text;
  2. $tekst = iconv("UTF-8","ISO-8859-2",$tekst);

i w tym momencie zmienna $tekst jest pusta ... i nie mam pojęcia dlaczego. skoro xml jest w iso potem przez funkcję jest konwertowany do utf-8 i żaden znak nie ginie, a odwrotnie nie działa ...
Doradzi ktoś jakieś rozwiązanie?

a byc może w htmlu da się wyświetlić jakiś fragment w kodowaniu innym niż reszta? (przydało by się (IMG:style_emoticons/default/winksmiley.jpg) )
Go to the top of the page
+Quote Post
Noidea
post
Post #2





Grupa: Zarejestrowani
Postów: 226
Pomógł: 61
Dołączył: 20.08.2010

Ostrzeżenie: (0%)
-----


Znaki cyrylicy masz zapisane jako encje w XML'u w takiej postaci?
  1. <elem>aaa &# 1046; bbb</elem>
//bez spacji w encji

Jeśli tak, to SimpleXML zamienia je z powrotem na rosyjskie litery i pewnie podczas konwersji UTF-8 -> ISO-8859-2 wywala ci błąd.


Prawidłowy względem standardu XML zapis to:
  1. <elem><![CDATA[aaa &# 1046; bbb]]></elem>
//bez spacji w encji

albo:
  1. <elem>aaa &amp;#1046; bbb</emel>


Ten post edytował Noidea 7.09.2010, 14:58:04
Go to the top of the page
+Quote Post
exood
post
Post #3





Grupa: Zarejestrowani
Postów: 86
Pomógł: 16
Dołączył: 2.12.2009
Skąd: Płock/Warszawa

Ostrzeżenie: (0%)
-----


dziękuję bardzo za pomoc - oczywiście działa (IMG:style_emoticons/default/smile.gif)
dobrze jest się nowej rzeczy nauczyć (IMG:style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 17:57