foreach文備忘録 - e-jigsaw.blogspot.com

PHP の制御文に foreach 文という構造があります。最初は軽視していた制御文だったのですが *1 、ちょっと前にかなり重要であることを認識させられました。最近はPerlとかでもあるようです。
基本構造
_
foreach(配列名 as 値用の変数) {

基本はこんな感じです。配列名は普通に配列名、値用の変数というのはforeach文の中で使う値の変数のことで、Cでいうi *2 になる変数です。PHPにもfor文はあります。Cを始め大半の言語で用いられている構文と同様です。
_
for(初期値; 範囲; カウントアップ処理) {

とまぁ、こんな感じです。なぜfor文ではダメなのでしょうか。
for文とforeach文の違い
例えば、配列に文字が入っていたとします。
_
$a = array("りんご", "まど", "ぺんぎん");

この配列の中身を全部表示したい時なんかには、for文では使い勝手がすごく悪いわけです。これが最たる理由 *3 です。
_
$a = array("りんご", "まど", "ぺんぎん");

こんな感じにしてやると
_
りんご

こんな風に表示してくれるわけですね。
他に、
_
foreach(配列名 as キー変数 =

という書き方もあって、これを使うと連想配列も簡単に表示できるようになるわけです。
_
$a = array("りんご" =

とすると
_
1:りんご

と表示されるわけです。ちなみに、
_
$a = array("りんご", "まど", "ぺんぎん");

とすると、
_
0:りんご

となります。ふと、備忘録をつけておこうと思ったので。最初はこの構文わけわかんなかったなー。
*1 :だってfor文あるじゃん!
*2 :iが一般的だよね?
*3 :個人的には

original: https://e-jigsaw.blogspot.com/2010/11/foreach.html
#20100214 #0214

関連ページとランダムに選ばれたページ

筆者について

jigsaw(ジグソウ、1991年6月12日-)は日本のプログラマ、会社代表。本名は小林貴也(こばやし たかや)。主にウェブ、フロントエンド領域で活動している。カミング・スーン合同会社の代表社員。
さらに詳しく

寄附について

面白かったらBTCETHでの寄附をお待ちしております。
寄附のきろく