サイド上背景

サイトについて

リンクフリー

個人ご利用の場合はリンクフリーです。備忘録等に各種ドキュメントへのリンク。ご自由にご利用ください。

転載

出典元表記(当社名orリンク記載)の際は転載等ご自由にご利用ください。

ライセンス

このページの内容の一部は、Google が作成、提供しているコンテンツをベースに変更・複製したもので、クリエイティブ・コモンズの表 示 3.0 ライセンスに記載の条件に従って使用しています。

株式会社 Sola.com

ソラコムお問い合わせ

〒981-0913
宮城県仙台市青葉区昭和町3-7 スカイコート上杉601
TEL:022-234-9972
Fax:022-778-6779

きょうのことば

"

お互い知己のない四人の勇者がライオンと向かい合っても誰も戦おうとはしない。

互いの能力を知り合っている四人の弱者がライオンと向かい合えば、それぞれの得手で助け合って決然と戦う。

"

"Battle Studies"(1880) Ardant du Picq [松村2005]


コンテンツ背景
Home スタッフ雑記 sato PHP再入門15
PHP再入門15

サンプル:飛び飛びの数値添え字の配列

<?php
// 配列作成
$a = array(
  
1  => 100,
  
5  => 500,
  
10 => 1000
);

foreach(
$a as $value ){
  echo
$value."<br />\n"; // 改行しながら値を表示
}
?>

出力結果

100

500

1000



拡張構文

foreach文にはもう1つ、便利な拡張型があります。この場合は各ループでの現在の要素の値が変数$valに、要素のキーが変数$keyに代入されます。

使用方法:

foreach( 配列 as $key => $val )
  
ループ処理;

サンプル:連想配列

<?php
$fruit
= array(
  
"apple"  => "りんご",
  
"orange" => "オレンジ",
  
"pear"   => "なし"
);

foreach(
$fruit as $key => $value ){
  echo
$key. ":" .$value."<br />\n"; // 改行しながら値を表示
}
?>

出力結果

apple:りんご

orange:オレンジ

pear:なし


多次元配列の場合の構文

多次元配列をforeach文で扱う場合にはネスト(入れ子)します。

<?php
$food
= array(
  
"vegetable" => array(
      
"carrot"=> "にんじん",
      
"tomato" => "トマト",
      
"onion" => "たまねぎ"
  
), // カンマ , で区切る
  
"fruit" => array(
      
"apple" => "りんご",
      
"orange" => "オレンジ",
      
"grape" => "ぶどう"
  
)
);
// 文終了のセミコロン ;

foreach( $food as $key1 => $val1 ){
  echo
"--".$key1. "--<br />\n";

  foreach(
$val1 as $key2 => $val2 ){
    echo
$key2. ":" .$val2."<br />\n";
  }
}

?>

出力結果

--vegetable--

carrot:にんじん

tomato:トマト

onion:たまねぎ

--fruit--

apple:りんご

orange:オレンジ

grape:ぶどう