問題
PHPのforeachで最初または最後の時に処理を分けるには?
解決策
IF構文で値が以下と該当するかどうかで判定します。
- 最初 … reset( 配列 )
- 最後 … end( 配列 )
PHPのforeachで最初と最後の判定
PHPのforeachで最初または最後の時に処理を分ける方法をご紹介します。
最初の場合
IF構文で「reset( 配列 )」に該当する場合は、配列の最初の値となります。
$arrays = array(
"値01",
"値02",
"値03",
"値04",
"値05"
);
foreach( $arrays as $items ):
if( $items === reset($arrays) ):
// 最初の値の場合の処理
endif;
最後の場合
IF構文で「end( 配列 )」に該当する場合は、配列の最後の値となります。
$arrays = array(
"値01",
"値02",
"値03",
"値04",
"値05"
);
foreach( $arrays as $items ):
if( $items === end($arrays) ):
// 最後の値の場合の処理
endif;
endforeach;
参考ページ
以下のサイトが、より詳しく解説してくれています。
【PHP – foreachで最初と最後の処理を制御する – Qiita】
https://qiita.com/potetopote_/items/2f199099566e6a0e01a1
コメント