配列を走査しているときに現在の要素番号を取得するにはどうすればよいですか?
私はcount()について知っていますが、余分なカウンター変数を追加することなく、現在のフィールドインデックスを取得するための組み込み関数があることを望んでいました。
このような:
foreach($array as $key => value)
if(index($key) == count($array) ....
PHP配列は、整数インデックスと文字列インデックスの両方があります。それらを混ぜることもできます:
array('red', 'green', 'white', 'color3'=>'blue', 3=>'yellow');
値'blue'
にインデックスを何にしたいですか? 3ですか?しかし、それは実際には値'yellow'
のインデックスなので、あいまいになります。
別の解決策は、配列を整数インデックス付きの値のリストに強制することです。
foreach (array_values($array) as $i => $value) {
echo "$i: $value\n";
}
出力:
0: red
1: green
2: white
3: blue
4: yellow
foreach() {
$i++;
if(index($key) == $i){}
//
}
function Index($index) {
$Count = count($YOUR_ARRAY);
if ($index <= $Count) {
$Keys = array_keys($YOUR_ARRAY);
$Value = array_values($YOUR_ARRAY);
return $Keys[$index] . ' = ' . $Value[$index];
} else {
return "Out of the ring";
}
}
echo 'Index : ' . Index(0);
($ YOUR_ARRAY)を置き換えます