- ベストアンサー
mb_convert_variablesで変換出来てない??
PHP初心者で今勉強しているのですが、入門書に書かれたサンプルソースが実行すると文字化けします。以下です。 <html> <head> <title>RSSフィードの読み込み</title> </head> <body> <h1 style="background:#cccccc">RSSフィードの読み込み</h1> <?php require_once("rss_fetch.inc"); $objXml=simplexml_load_file("rss.xml"); foreach($objXml->site as $site) { $objRss=fetch_rss($site->url); mb_convert_variables("EUC-JP","auto",$objRss); ?> <dl> <dt style="font-weight:bold;"><?php if(!is_null($site->title) && $site->title!=""){ print(mb_convert_encoding($site->title,"EUC-JP","auto")); }else{ print($objRss->channel['title']); }?></dt> <dd> <ol> <?php foreach ($objRss->items as $item){ ?> <li> <a href='<?php print($item['link']);?>'> <?php print($item['title']); ?></a> </li> <?php } ?> </ol> </dd> </dl> <hr /> <?php } ?> </body> </html> mb_convert_encodingの所は変換出来てるのですが、mb_convert_variablesで変換したリストの所だけ文字化けします。 php.iniとか見ても多分出来てるようなのですが、わかる方すいませんが宜しくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
ブラウザが他の文字コードで表示してるということは無いですか? 試しに、<head>~</hrad>内に以下の記述を入れてみてください。 <meta http-equiv="Content-Type" content="text/html; euc-jp">
その他の回答 (1)
- UmJammer
- ベストアンサー率58% (115/196)
$objRssのエンコーディングが分かっているのならばautoではなく直接指定してやればどうでしょうか。
お礼
多分返ってくるのはUTF-8なのだと思うので設定したけどダメでした。。全部??になるんです。
お礼
<meta http-equiv="Content-Type" content="text/html; euc-jp"> も入れてました。 でもできず・・。 でもphp.iniとhttpd.confを適当にいじってたら出来てました。 すいません。ありがとうございます。