PHP の連想配列をループする
-
PHP で
foreachループを使用して連想配列をループしキーを取得する -
PHP で
foreachループでarray_keys()関数を使用して連想配列からキーを取得する -
array_keys()関数をforループとともに使用して、PHP の連想配列からキーを取得する
この記事では、PHP で連想配列をループするいくつかの方法を紹介します。また、アレイからキーを取得する方法についても学習します。
PHP で foreach ループを使用して連想配列をループしキーを取得する
PHP や、for、while、do...while、foreach などの他の一般的なプログラミング言語には多くのループステートメントがあります。これらの異なるループは、問題の性質に応じて使用されます。
foreach ループを使用して、配列をループできます。foreach ループは、配列の各要素を反復処理するのに適しています。
foreach ループの構文を以下に示します。
foreach($array as $value){
statements
}
ここで、$array は繰り返される配列であり、$value は各反復における配列の項目です。
連想配列の foreach ループを使用して、配列のキーと値をループすることもできます。連想配列は、配列の各項目のキーと値のペアを含む一種の配列です。
foreach ループを使用して、配列アイテムのキーと値を取得できます。連想配列の foreach ループ構文を以下に示します。
foreach($array as $key => $value){
statements
}
ここで、$key は配列アイテムのインデックスであり、$value はアイテムです。
次の手順と例は、連想配列をループして、配列から各キーを取得する方法を示しています。
-
キーと値として人の名前と年齢を使用して、連想配列
$ageを作成します。 -
次に、
foreachループを使用します。ここで、$ageは配列であり、$keyと$valueはforeach ($age as $key => $value)としてのキーと値のペアです。 -
ループ内で
echo関数を使用して、$keyを出力します。
サンプルコード:
<?php
$age = array("Paul"=>"35", "Brandon"=>"37", "Jack"=>"43");
foreach ($age as $key => $value) {
echo $key."<br>";
}
?>
出力:
Paul
Brandon
Jack
上記の例では、次の連想配列を使用しています。
Array ( [Paul] => 35 [Brandon] => 37 [Jack] => 43 )
人々の名前である配列のキーを印刷しました。それらは上の出力セクションで見ることができます。
PHP で foreach ループで array_keys() 関数を使用して連想配列からキーを取得する
PHP には、引数として指定された配列からキーを選択する関数 array_keys() が用意されています。次に、foreach ループを使用してキーをループし、それらすべてを一覧表示できます。
array_keys() 関数の構文を以下に示します。
array_key($array, $search_value)
この関数は、キーの配列を返します。引数 $array は、キーが抽出される配列です。
引数 search_value は、特定の値を指定するキーを抽出するためのオプションの引数です。
例えば、
-
次のキーと値のペアを持つ連想配列
$nationalityについて考えてみます。Array ( [Paul] => England [Brandon] => New Zealand [Jack] => Ireland ) -
変数
$namesを作成し、$nationalityを関数の引数としてarray_keys()関数を割り当てます。 -
次に、
foreachループを使用して、$names配列をループします。 -
ループ内で、
$names配列の各項目を$name値で出力します。
サンプルコード:
<?php
$nationality = array("Paul"=>"England", "Brandon"=>"New Zealand", "Jack"=>"Ireland");
$names =array_keys($nationality);
foreach ($names as $name) {
echo $name."<br>";
}
?>
上記の例では、$names 配列の出力は次のようになります。
Array ( [0] => Paul [1] => Brandon [2] => Jack ) Paul
したがって、$nationality キーの配列を取得しました。foreach ループを使用してこの配列をループし、各アイテムを抽出しました。
出力を以下に示します。
出力:
Paul
Brandon
Jack
このようにして、PHP の array_keys() 関数を使用して配列のキーを取得できます。
array_keys() 関数を for ループとともに使用して、PHP の連想配列からキーを取得する
3 番目の方法は、for ループを使用して 2 番目の方法を模倣します。for ループと foreach ループの違いは、for ループの条件と反復回数を手動で指定できることです。
count() 関数を使用して配列の要素数をカウントし、反復回数を決定できます。array_keys() 関数は、2 番目のメソッドと同じです。
ここでは、上記の方法で使用したものと同じ連想配列を検討します。
-
array_keys()関数をアレイに適用した後、forループを作成します。 -
count()関数を使用して、$names配列の長さをカウントします。 -
長さを使用して、
forループの終了条件を指定します。 -
カウンター
0からループを開始します。 -
$i変数で初期化します。 -
forループで変数$iを1でインクリメントします。 -
ループ内で、
$names配列のインデックス$iを使用して各アイテムを印刷します。
サンプルコード:
<?php
$nationality = array("Paul"=>"England", "Brandon"=>"New Zealand", "Jack"=>"Ireland");
$names =array_keys($nationality);
for($i=0; $i<count($names); $i++) {
echo $names[$i]."<br>";
}
?>
出力:
Paul
Brandon
Jack
このようにして、for ループと array_keys() を使用して、PHP の連想配列からキーを取得できます。
Subodh is a proactive software engineer, specialized in fintech industry and a writer who loves to express his software development learnings and set of skills through blogs and articles.
LinkedIn関連記事 - PHP Array
- PHP の foreach ループの最初と最後の要素を決定する方法
- PHP で配列を文字列に変換する方法
- PHP で配列の最初の要素を取得する方法
- PHP で配列をエコーまたは出力する方法
- PHP で配列から要素を削除する方法
- PHP で空の配列要素を削除する方法
