phpで携帯サイトを作るとき、文字コードはShift-JISじゃないといけないらしいのでphpの標準出力はUTF-8だけど
mb_internal_encoding("Shift-JIS");
mb_http_output("Shift-JIS");
ob_start("mb_output_handler");
header("Content-Type:text/html;charset=Shift-JIS");
にして携帯用ファイルだけShift-JISで出力。
で、ここまではいんでけどそこにxmlを読み込ませて表示させようとおもったんだけどxmlは文字コードがUTF-8とisoしか使えない(EUC-JPもいけたかも)のでさらに文字コードを携帯用に変換してあげる。
以下を参考にしつつ
http://www.cocoaliz.com/php/index/11/
http://www.geocities.jp/xmlfirststep/pxml/pxml2.html
書いた(コピペ)のがこれ
$file = "sensyu2.xml";
$xml_parser = xml_parser_create("UTF-8");
$data = mb_convert_encoding($data, "Shift-JIS", "UTF-8");
if (!xml_parse($xml_parser, $data, feof($file))) {
die(sprintf("XML error: %s at line %d",
xml_error_string(xml_get_error_code($xml_parser)),
xml_get_current_line_number($xml_parser)));
}
$xml = simplexml_load_file($file);
$db = $xml->db;
echo($db->id ."
");
echo($db->pass ."
");
print $db->host ."
";
print $db->dbname ."
";
xml側はUTF-8にしてあるのでそれをShift-JISに変換してファイル読み込みで表示されるかと思いきや。
文字化けた。
いろいろ試したけど解決できず。。。
全部UTF-8ならうまくいくのに(><)
携帯って面倒だな。