練習問題でつまづきながら
こんにちは。しゅーのーです。
今日は日曜日ということで、文字通り日曜大工をしていました。屋内で。
もちろんphpの勉強もしました。参考書は下記のとおり。
復習をすることに
前回までCodeIgniterと戦っていたわけなんですが、自分の力量が全然足りていないことが分かったので、もう一度参考書の最初からやり直すことにしました。
最初からやり直す予定はしていたのですが、とりあえず参考書が全部終わってからかな、と思っていました。
しかし、このままエラー画面を見ているままでは、時間が無駄に過ぎていくだけです。
思い切って予定を繰り上げて、最初から復習することにしました。
2回目なのでスムーズ
参考書に書いてあるコードを写していくのは、今回で2回目になります。
前回はけっこう時間がかかったのですが、さすがに1回やったことなのでスムーズに進みました。
今度は解説もちゃんと理解しながら進めていきます。
コードについてもただ写すだけではなくて、こう書けばよさそうだな、というポイントを押さえながら書いていきました。
練習問題に苦戦
この参考書には章が終わるごとに練習問題がついているのですが、1回目はこれをすっ飛ばしていました。
理由としては、まずは本に書いてある内容を全部通しで進めたかったからです(結局できなかったんですが)。
今回は練習問題にもとりくんでいきます。
練習問題なので、自分でコードを考えて、結果を出すわけです。
今日やったものは、1問目でいきなりつまづいてしまいました。
やりたいことは分かるのに、コードの書き方が分かりませんでした。
具体的に言うと、「繰り返しの処理でファイルに書き込みをする」という処理です。
自分なりに考えて、ああでもないこうでもないと、書いていたのですが、できませんでした。
結局、解答を見るはめに。できれば見たくはなかったのですが。
見てみたら、なんてことはない答えでした。
for構文で書いていくだけだったのですね。
目から鱗
ぼくが一番「うおっ」と思ったのは「for構文には必ずしもカウンターを入れなくていい」ということですね。
大体の基礎的なところだとこんな感じで書いてあるじゃないか。
for ($num = 0; $num <= 4; $num++) {
echo $num;
}
ぼくの頭の中の先入観として「for構文の中には必ずカウンターがある(今回は$num)。」が根強くありました。
これ、カウンターを裏で使うことも当然できるんですね。
for ($num = 0; $num <= 12; $num++) {
fwrite($fp, 0 . "\n");
}
これが今回の答えだったんですが、こうすることで「0」を13回、改行しながらかきこんでくれます。
あぁ、{}の中にカウンターがない。
処理の回数だけ数えててくれれば、それでいいんですね。
明日は苦戦したコンタクトフォーム
明日は1回目でエラーが多発した、「コンタクトフォーム」の復習をしようと思います。
今回はスムーズにいけばいいんだけど。
今日はここまで。ではー。