重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【GOLF me!】初月無料お試し

いつもお世話になっています。
星座の振り分けで
if (($tuki==01 and $nichi>=21) || ($tuki==02 and $nichi<=19)){
print "水瓶座";
}
としてみたのですが、
これを蟹座までひたすらif文で
if (($tuki==06 and $nichi>=22) || ($tuki==07 and $nichi<=23)){
print "蟹座";
}
と続けていました。
ここまでは正常に動いていました。

獅子座
if (($tuki==07 and $nichi>=24) || ($tuki==08 and $nichi<=23)){
print "獅子座";
}
を入力した時点で500エラーになってしまいました。
まったく事務処理的に同じように文章を組み立てていたのに
なぜ獅子座からはエラーになるのかが分かりません。
何か構文的なミスがあるのでしょうか?
よろしくお願いします。

A 回答 (2件)

08が、8進数って解釈されたのかと



"08"のように数字を全部囲んだらどうでしょう。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。
ご指摘のとおりに、08を""で囲んだらうまくいきました。
どうもありがとうございました。

お礼日時:2008/09/25 02:26

phpはよく知らないんですが、


月の値の、頭の0を取り除いてはどうでしょう?

10進数の表現に、 頭に0を付加した月の値の01....08ってありなんですか?
8進数の表現と思います。

参考URL:http://manual.xwd.jp/language.types.integer.html

この回答への補足

お礼をしたあとに
頭の0を取り除いた表現も試してみました。
ご指摘のとおり、正常に動きました。
どうもありがとうございました。

補足日時:2008/09/25 02:34
    • good
    • 0
この回答へのお礼

参考URLありがとうございました。
参考先のページに確かに8進数は頭に0をつけるとかいてありますね。
今度頭の0を取り除いた表現も試してみます。
どうもありがとうございました。

お礼日時:2008/09/25 02:31

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