PHPのforeachで繰り返した時のインデックス番号を取得する
プログラミングは同じ処理でも言語によって似ているようで、書き方が微妙に違うということがよくあります。今回はPHPにおいて配列の処理などで使われるforeachで繰り返した場合のインデックス番号の取得についてメモしておきたいと思います。
基本的なことになりますが、PHPで配列内のデータを扱うときに、foreachは下記のようになります。
【PHP】
<?php $array = array( 'いちご', 'みかん', 'りんご', 'ぶどう' ); foreach ( $array as $value ) { echo $value. "\n"; } ?> // 出力結果 いちご みかん りんご ぶどうforeach( 配列 as 値 )のように指定して、そのスコープ内で処理を記述していきます。上記の場合のように値だけが必要な場合はその記述で問題ありませんが、インデックス番号が取得できません。 普段はどちらかというとJavascriptを扱うことが多く、forEach()の関数などで配列データを操作したりするのですが、この場合、引数でインデックス番号を取得する形になるのですが、PHPの場合はこのように少し要領が変わるので、注意が必要です。そこで、PHPで配列のループ処理の場合にインデックス番号を取得する場合は下記のようになります。 【PHP】
<?php $array = array( 'いちご', 'みかん', 'りんご', 'ぶどう' ); foreach ( $array as $index => $value ) { echo $index. ":". $value. "\n"; } ?> // 出力結果 0:いちご 1:みかん 2:りんご 3:ぶどうforeachで配列と値を引数として指定しますが、この時に値を「キー => 値」の形にします。すると、元の配列にキーが指定されていない場合にはデフォルトでインデックス番号が当てられるのでそれを参照する形で実現できます。 もちろん、キーと値のセットになった連想配列のデータを扱う場合に、同じ方法でキーの値を取得する場合にも使われます。 【PHP】
<?php $array = array( 'strawberry' => 'いちご', 'orange' => 'みかん', 'apple' => 'りんご', 'grape' => 'ぶどう' ); foreach ( $array as $key => $value ) { echo $key. ":". $value. "\n"; } ?> // 出力結果 strawberry:いちご orange:みかん apple:りんご grape:ぶどう普段あまり触らないとこのような微妙な違いに手が止まってしまいがちですので、できるだけ頑張って覚えておきたいところですね。
sponserd
keyword search
recent posts
- レスポンシブ対応のインラインSVGを作成する
レスポンシブ対応のインラインSVGを作成する
- webpackで画像ファイルをバンドルしてCSSで読み込む画像をBase64エンコードする
webpackで画像ファイルをバンドルしてCSSで読み込む画像をBase64エンコードする
- メディアクエリを使わないレスポンシブコーディングを試してみる #3:コンテナクエリ
メディアクエリを使わないレスポンシブコーディングを試してみる #3:コンテナクエリ
- Vue.jsでStripe決済処理用のコンポーネントを作成する
Vue.jsでStripe決済処理用のコンポーネントを作成する
- GSAPのアニメーション進捗値取得とコントロールで円形のプログレスバーを作成する
GSAPのアニメーション進捗値取得とコントロールで円形のプログレスバーを作成する
- JavaScriptで再帰関数を使ってネストした配列の深さを調べる
JavaScriptで再帰関数を使ってネストした配列の深さを調べる
- MakeShopのクリエイターモードでオリジナルデザインのECサイトを構築するときに使えるコード集
MakeShopのクリエイターモードでオリジナルデザインのECサイトを構築するときに使えるコード集
- GSAPでScrollTriggerプラグインを使ってスクロールに対応したアニメーションを実装してみる#3:スクロールで固定表示
GSAPでScrollTriggerプラグインを使ってスクロールに対応したアニメーションを実装してみる#3:スクロールで固定表示
categories