*

繰り返しを学ぼう (for,foreach)

公開日: : 最終更新日:2015/05/20 PHP, 講義

こんばんわ。松本です。

ゴールデンウィークもそろそろおわりですね。といいつつ、私はどこにも言ってないですし、家と職場で仕事をしていることが多かったので普段と変わらなかったんですが(汗)

さて、今回の講義は繰り返しについて扱います。

これまたプログラミングの基本中の基本になりますので、しっかり覚えましょう。例によってすごいカンタンですが、すごい重要です。

繰り返しとは?

繰り返しとは例えば「1から10までを表示しましょう」みたいなケースです。

これをやるときに、

といった、書き方をしては当然いけません。

これだと1→10ぐらいならいいですが、1→1000とかだともう収拾がつきませんね。終わりが1000であっても、10000であってもそれほど行数が増えないような書き方が望ましいです。

このようなときに考え出されたのが繰り返しの構文で、for(配列の操作はforeach)を使います。

forの書き方

例えば上記のケースでは以下のように書けば、1から10までを表示することができます。

あえて日本語でかくと

for( 変数のスタート;変数の終わり;変数のカウントアップ(++で1ずつ増える)){
内部で繰り返される処理
}
となります。上の例ですと$iという変数が1から始まり10まで1つずつ増えるという処理を行っています。

実務で多いのは配列の処理

このようにforを書かせてもらいましたが、実務で一番多い繰り返しの処理というのは実は配列の処理になります。

例えば上記のような配列があってこれらを全て画面表示したいときには配列を下記のようにforで展開すればOKです。(見やすくするために空白を入れてありますがこれはなくても構いません。)

ただ上記の場合、わざわざ配列の要素数を数えるのが面倒くさいですね。
通常だと配列の要素数を数えるのはcount($kudamono)という関数で数えることができるのでこれを使い、数えることが一般的です。

foreachの書き方

forでも問題ありませんが、PHPには配列を展開する専用の構文があります。それがforeachです。
forの場合、確かに便利なのですが

  • スタートとゴール、カウントアップなどを自分で書かなくてはいけない
  • 配列の要素数を数える処理が必要になる

など不便な点もあります。

foreachはこのような不便な点をカバーした処理です。

たとえば先ほどの処理ですと下記のようにして書くことができます。

foreachのなかの説明ですが

foreach(ループさせる配列 as キー=> 値){

この中で配列の要素分のループが回ります。

$key ,$valueという変数がそれぞれ配列のキーと値として使われます。

}

$keyと$valueという変数名は別にこれでなくても構いませんが、一般的に良く使われるため、使用しました。

なおキーを使わずに値だけを下記のように使用することも可能です。

※逆に言うとキーだけを使用することはできません。

配列のループ処理は繰り返しの中でも最もよく使われる処理だけにしっかり覚えておきましょう!

実務での使用ケース

実務で使われるのはもっぱら下記のような多次元配列の中に連想配列が入ったパターンです。理由としてはデータを扱ってみよう その3(多次元配列)でもかきましたが、人間が普段扱うデータというのがこのケースが多いからです。

これをループさせてみましょう。

このタイプのループ処理が実務で最も多いものなので慣れておくようにしましょう!プログラミングをやるとこの処理を毎日ひたすらすることになります。

関連記事

初心者でもできる!作れる!WEBサービスの開発 その3 運営体験記編

(前回までの続き) 初心者でもできる!作れる!WEBサービスの開発 その1 準備編 初心

記事を読む

プログラミングが初心者にとって難しい4つの理由

今回は初心者がプログラミングをやるのがなぜ難しいかをしっかり書いていこうかと思います(爆)。

記事を読む

エディタを使いこなそう

PHPでプログラミングを始めるためにはXAMPPのインストールともう一つエディタというソフトをそろえ

記事を読む

初心者がプログラミング学習で挫折しないために大切な2つのポイント

ブログを開設してから半年近く、記事にして70ちょっと書いてきましたが、人気のある記事を見ていると大き

記事を読む

よく使う処理をまとめよう その1 (関数)

おはようございます。松本です。 私の会社では10時半から掃除の時間でして、ここ数ヶ月ずっとやっ

記事を読む

就職するときに見落としがちな考え方

今は自社で就職の斡旋などはしていないのですが、人材紹介会社で働いていたときは生徒の就職に立ち会ってき

記事を読む

PHP 掲示板

PHPで掲示板を作ろう! 掲示板の作成方法 その3(エラーチェックとファイル書き込み)

今回はPHPのコードの説明です。 掲示板の作成方法についてやります。 えー、前回の掲示板

記事を読む

PHPで掲示板を作ろう!(データベース編) その1 データベースとは

以前、掲示板を作成するブログ記事を書きました。 その1 PHPで掲示板を作ろう! 掲示板の作成

記事を読む

どんなプログラマが身につけておいても損はない重要なスキルとは?

のっけからストレートなタイトルですいません。 ちょっとあおり気味なタイトルですが、今日紹介する

記事を読む

30代、未経験者、独学中心でWEBエンジニアとして就職するまで

のっけからストレートなタイトルでスイマセン。 昨日ブログのアクセスをいろいろとみていましたが、

記事を読む

Comment

  1. […]  www.dt30.net繰り返しを学ぼう (for,foreach) | ガチンコPHP塾http://skill-up-engineering.com/gachinko/?p=181こんばんわ。松本です。 ゴールデンウィークもそろそろおわりですね。といいつつ、私はどこにも言 […]

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

転職エージェントについて

さて、エンジニアとして転職を考えている人であれば転職エージェントを使っ

エンジニアが転職して年収を上げる方法を考えてみました。

えー前回の記事でも書きましたが、2020年2月現在転職活動中です。

2020年のご挨拶

今更ですが、明けましておめでとうございます。 2019年も2本し

自社開発>客先常駐である本当の理由

このブログでも何回か取り上げていますが、ITエンジニアの働き方としては

エンジニアにとって必要なコミュニケーション能力とは

気がついたらもう3月下旬になっていますね・・ 年末年始忙しかった

→もっと見る

  • follow us in feedly
PAGE TOP ↑