foreach文で配列のキーのみを取得したい場合、まず以下のコードが真っ先に思いつく。
1 2 3 | foreach ( $array as $key => $val ) { // code... } |
しかしこれでは、$valを使わない処理の場合、無駄なコードが入っていることになり見た目上あまりよろしくない。
また、以下のようにしたところで、今度はキーを取得することができない。
1 2 3 | foreach ( $array as $key ) { // code... } |
array_keys関数を使ったスマートな書き方
正解はこちら。
1 2 3 | foreach ( array_keys ( $array ) as $key ) { // code... } |
array_keys関数を使う方法だ。
array_keysは引数に渡された連想配列のキーからなる配列を返す関数で、これをforeach文に渡すことでキーのみを取得してループを回すことができる。