foreach文を使った配列(or連想配列)の繰り返し処理[PHP]

foreach文を使った配列(or連想配列)の繰り返し処理[PHP] PHP

「配列や連想配列の値を1つずつ取り出して、繰り返し処理を実行したい」

コードを記述していて、そう思うことがあるでしょう。

PHPには、そのための構文である「foreach文」があります。

この記事で、基本的な使い方をマスターしましょう。

foreach文の書き方

foreach文の書き方は、以下の通りです。

配列の場合:
foreach(配列 as 変数) {
  処理;
}
連想配列の場合:
foreach(連想配列 as キーを代入するための変数 => バリューを代入するための変数) {
  処理;
}

配列の場合、要素を1つずつ変数に代入して処理を繰り返し実行します。

連想配列の場合はキーとバリューがあるので、変数が2つ必要です。

例を見ていきましょう。

例1
<?php
$animals = ['monkey', 'snake', 'cow'];
foreach($animals as $value) {
  echo $value.'<br/>';
}
?>

/* 実行結果
monkey
snake
cow
*/
例2
<?php
$animals = [
             'monkey' => 'サル',
             'snake' => 'ヘビ',
             'cow' => 'ウシ'
           ];
foreach($animals as $key => $value) {
  echo $key.'は日本語で'.$value.'です。<br/>';
}
?>

/* 実行結果
monkeyは日本語でサルです。
snakeは日本語でヘビです。
cowは日本語でウシです。
*/

例1では、配列$animalsの値を1つずつ変数$valueに代入して、echoを繰り返しています。

なお、<br/>は改行を指示するHTML要素です。以下の記事を参照。

例2では、連想配列$animalsのキーを$keyに、バリューを$valueにそれぞれ代入して処理を繰り返しています。

breakとcontinue

breakcontinueを使うこともできます。以下の記事も参照。

例3
<?php
$animals = ['monkey', 'snake', 'cow'];
foreach($animals as $value) {
  if($value == 'snake') {
    break;
  }
  echo $value.'<br/>';
}
?>

/* 実行結果
monkey
*/
例4
<?php
$animals = ['monkey', 'snake', 'cow'];
foreach($animals as $value) {
  if($value == 'snake') {
    continue;
  }
  echo $value.'<br/>';
}
?>

/* 実行結果
monkey
cow
*/

まとめ

  • 配列と連想配列で繰り返し処理を行う
  • 配列では変数1つ、連想配列では変数2つが必要
  • breakとcontinueが使える

以上がforeach文の基本的な使い方です。

あなたの毎日がハッピーでありますように。

コメント

タイトルとURLをコピーしました