このサイトはPHPを独習する際に作成したスクリプトを基に、プログラム言語初心者のための入門講座として作成しました。PHPは初心者に親しみやすく、解りやすいプログラム言語です。これからプログラムを学ぶ人の参考になればと思います。
5-1 ループで繰返し while を使って画像を表示
whileを使えば指定回数、同じことができます。 しかし、注意して作らないと無限ループに陥ってしまいます。そうなるとサーバーに大きな負担、最悪壊してしまうかもしれません。ループが永久に続かないよう気をつけましょう。 そのためには終了の条件設定が必要です。またifとの連携も有効な方法です。例えばサンプルのようにifの中で条件に合った時だけループを行うか、逆にwhileの中にifを入れ、一定の回数に達すると中止する、といった記述が可能です。 $a++ は、$a = $a + 1 という意味、つまり新しい $a は前の $a に1を足したものになるわけです。0から始まり順に数が増え、命令した数になるとループが終了します。
⇒こんな感じ
5-2 while を使ってテーブルを作る
テーブルで表を作って見ましょう。表に入れる人数を12名にして順にHTMLを記述していきます。 名前の前後に<td>〜</td>、を繰り返し入れて行くと考えてください。そして4つごとに<tr>と</tr>を入れていきます。しかし、<tr>をどこに入れるのでしょうか? その判断は%を使います。%は割算の余りを返す演算子でした。カウントは0から始めるので、4で割って3余る番号が右端です。if を組み合わせ0が来たら<tr>、3が来たら</tr>です。12名の名前は予め配列の中に入れておきます。そうすれば shuffle 関数で簡単にランダムな入替えができます。
⇒こんな感じ
5-3 ループで作るギャラリー for も同じ繰返し
for と言うのはwhile とまったく同じことができるんですね。ただ、記述の方法がちょっと違います。人によってはこちらの方が解りやすいかも。
for(最初の数;続ける条件;増加){ 処理 }
ここではテーブルを使って、文字の変わりに写真を並べます。その際、img のwidthとheightを指定することで画像は見た目の大きさが変わるので、全体を600pxとしてブラウザから横に何枚並べるかを計算させます。写真が大きくなったり小さくなったり調整ができるわけです。さらにクリックすると新しくウィンドウを開いて写真をオリジナルサイズで表示できるようにします。 写真はpict0.jpgから順に数字を付ける事によって、ループしながらテーブルと共に表示していきます。
⇒こんな感じ
5-4 ループで作るギャラリー2 ループ2重まわし!
上のギャラリーではすべてが同じサイズですが、今度は横一列ごとに表示枚数を変えて表示させてみましょう。横に順に並べるのが一つのループ、さらに2列目3列目とループで繰り返していきます。
a = 0; //列の数をカウント b = 0; //画像の数をカウント while(終りの列まで){ while(右端まで){ 画像表示; //1列で1テーブル b++; } a++; }
1列目が横5枚、2列目が横6枚というように、並べる枚数を変えると、画像と画像の隙間の多い方が全体の長さが長くなって全体が綺麗にそろいません。そこで隙間をなくすため、cellpadding, sellspacing を0に指定します。
⇒こんな感じ |