WordPressやSymfonyのTipsを中心にアニメや日常の出来事について語ります。
メニュー

PHP – foreachの最初と最後のキー値を取得する

この記事は約45秒で読めます

PHP
ゆっきー
ども、カフェブロガーの悠木です。 お気に入りのカフェはドトールコーヒーです。 14時からの限定スイーツ「シューシャポー」が大好きです。

foreachで最初と最後のループの時だけ別の処理を実行したいときは良くあります。調べたことのメモ。

通常の配列の最初と最後のキー値を取得

単純にcountで配列の要素数を取って、比較するだけです。

連想配列の最初と最後のキー値を取得

連想配列の場合、キー値に何が入ってくるかわからないので要素数で比較できません。array_sliceで最初または最後の配列のみ切り抜きます。最後の引数にはtrueを入れておかないとキー値がリセットされてしまうので注意。切り出した配列をkey関数でキー値を取得する。

関数化

Utilなクラスに入れておけば使いやすいかも。

補足

resetendを使用すると内部ポインタが移動されることに注意が必要なことと、CoW(Copy on Write)により配列がコピーされ、倍のメモリを食ってしまうようです。(参考サイト参照)

参考サイト

関連記事

  1. Symfony2 MonologからSlackにメッセージを送る
  2. さくらのVPS CentOS7
  3. 記事タイトルで指定した文字を超えた場合「・・・」と表示する
  4. 記事タイトルで指定した文字を超えた場合「・・・」と表示する(改行タグ制限)
  5. PHPExcel PHP Excel

コメントをお待ちしております

PR

カテゴリー