質問: phpで簡単なカレンダーを作成する方法を見てサンプルを回してたんですが、なぜか違う動きをします。 おかしい理由はfor文のどこかで余計に+しているということはわかったのですが、出所がわかりません。 変数名を変えたくらいであとは変えてないと思うんですが、何時間かかっても違いがわかりません。 簡単な見落としだと思いますがよろしくお願いします。 間違い図 ``` ``` 正解図 ``` ```
回答: 単純に以下の部分が2回出てくるからでは。 ``` //配列に日付をセット $cr[$kk]['day']=$i; $kk++; //月末日の場合 if($i==$iti){ //月末日から残りをループ for($e=1;$e<=6-$we;$e++){ //後半に空文字をセット $cr[$kk]['day']=''; $kk++;var_dump($kk); } } ``` あと、ネストはちゃんとしましょう。 それだけで可読性が全然が違います。