dポイントプレゼントキャンペーン実施中!

天気予報をrssで取得して晴ならば画像を表示するようにしているのですがcase文に入ってくれません。試しにechoで表示させたら1=晴と表示されます。何が考えられますでしょうか?どなたか助けて下さい。
echo "1=", $wether[1];
$wether = split("<br />", $description);
switch($wether[1]){
case "晴":
$buf .= "<img src='/image/hare.gif'>";
break;
・・・あと続く
}

A 回答 (4件)

>ですが、echo "晴れ";とすると文字化けします。



RSSで取得した情報の文字コード、PHPプログラムファイルの文字コードが一致していないんじゃないでしょうか。
    • good
    • 0

> 試しにechoで表示させたら



というのは、

> echo "1=", $wether[1];

この時点のことですか?だとすると、その直後、

> $wether = split("<br />", $description);

これで$wetherの内容を更新しています。
この時点での$wether[1]の内容は、思ったとおりになっていますか?
    • good
    • 0

天気はweatherですね・・・。



echo "1=", $wether[1];
$wether = split("<br />", $description);
としているなら最初には「晴」がはいっていて
それがそのあとの処理でクリアになっているのでは?
もしくは文字コードがことなるとか・・・。
半角英数でためしてみては?
    • good
    • 0

$wether = split("<br />", $description);


のあとに、echo "1=", $wether[1]; してみてください。
要は、$wether = split... のところで、$wether[1]の値が上書きされて、「晴」じゃなくなっているのだと思います。

この回答への補足

上記試したところ晴が表示されます。。。
ですが、echo "晴れ";とすると文字化けします。
何か関係ありますか?

補足日時:2007/04/21 16:36
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!