ugrás a tartalomhoz

PHP -XML kódolási gond

figyuri · 2008. Már. 18. (K), 10.59
Sziasztok, - nagyon egyszerű a feladat, az eü.intézmények által szolgáltatott orvos adatokat kell beolvasnom XML file -ból. Az XML file így kezdődik :

<?xml version="1.0" encoding="ISO-8859-2"?>
<obp verzio="2.02" oepkod="K017" idoszak="200802">
 <orvos kod="47558" nev="Dr. Ádám Lajos">
  <szakvizsga>
   <vizsga mokkod="49" megszerezve="1982.11.27" kezd="1982.11.27" veg="2008.02.29"/>
  </szakvizsga>
A php beolvasom a lehető legegyszerűbben :

$file = "pelda1.xml";
if (!($fp = fopen($file, "r"))) {    die("could not open XML input"); }

$parser = xml_parser_create();
while ($data = fread($fp, 4096)) {

xml_parse_into_struct($parser, $data, $ertek, $index);

echo "\nertekek :\n";
print_r($ertek[1]);
print "<br>";
print_r($ertek[2]);
print "<br>";
print_r($ertek[3]);
print "<br>";
Apró kicsi gondom, hogy az ékezeteket nem tudtam kezelni :

ertekek : Array ( [tag] => ORVOS [type] => open [level] => 2 [attributes] => Array ( [KOD] => 47558 [NEV] => Dr. Ádám Lajos ) [value] => )
Array ( [tag] => SZAKVIZSGA [type] => open [level] => 3 [value] => )


Biztos valami nagyon egyszerű a megoldás, én az iconv -al, header -el próbálkoztam sikertelenül...

Köszönöm : -gyuri-
 
1

a dokumentáció olvasása segít

gex · 2008. Már. 18. (K), 12.11
ha rosszak az ékezetek vajon mivel lehet gond? csak nem a karakterkódolással? ha megnézted volna a dokumentációt, megtaláltad volna te is, hogy az xml_parser_create függvénynek van egy encoding paramétere. amint azt helyesen beállítod, valószínűleg menni fog.

ránézésre utf-8-cal próbálkozz.

szerk: remélem nem valós adatokat másoltál be ide. tudod, személyiségi jogok.

szerk: öhhmmm... most, hogy van kódszínezés (eddig nem volt), egyből látszik, hogy iso-8859-2 a kódolás. :)