Hei,
minulla on sovelluksia, jotka siirtävät tietoa XML:ssä, jotka käyttävät koodausta ISO-8859-1.
Palvelin on ulkomaisessa koneessa ja sovellus lukee siirrettävän datan koodauksen sieltä, eikä näin ollen näytä ääkkösiä. Ääkkösten tilalla näkyy "?".
Mitä voin tehdä?
Ehkä muuttaa localea.
<?php setlocale(LC_ALL, 'finnish'); ?>
Sitä miten saat selville shellissä serverin localet en osaa neuvoa. Enkä ole edes aamenen päälle varma korjaantuko asia edes tuolla.
En tosin saanut ihan selvää lopulta selvityksestäsi. Missä luodaan XML:t ja miten? Ovatko ääkköset XML-tiedostoissa oikein, vai muuttuvatko ne huonoksi vasta sieltä luettaessa?
Eli, minulla on "kääntäjä", joka ottaa vastaan XML:n ja palauttaa XML:n.
input XML:ssä on arvot oikein mutta tulessa(result xml) ne ovat muuttuneet.
JTS kirjoitti:
Ehkä muuttaa localea.
<?php setlocale(LC_ALL, 'finnish'); ?>
Näin siis Windows-koneilla, *nix-myllyissä suomilokaali latin1:llä on yleensä fi_FI
JTS kirjoitti:
Sitä miten saat selville shellissä serverin localet en osaa neuvoa.
Windows-koneista en tiedä, *nix-koneissa komentamalla locale
Kaikki saatavilla olevat vaihtoehdot saa komentamalla locale -a
Kaikilla alustoilla:
setlocale(LC_ALL, array("fi_FI", "fin", "finnish"));
Aihe on jo aika vanha, joten et voi enää vastata siihen.