配列じゃなくて連想配列。
こうする
$sampleArray = array('key'=>'value','key'=>'value','key'=>'value','key'=>'value',...);
foreach($sampleArray as $key => $value){
if($value === reset($sampleArray)){
//1回目の処理
}else{
//2回目以降
}
}
reset()を使うことで一発目の連想配列の値が出せる。foreachで回した際に値が合致したら1回目だ、ということになる。
値が重複するデータの場合は詰むので使い分けが必要。
またはこう
$sampleArray = array('key'=>'value','key'=>'value','key'=>'value','key'=>'value',...);
$count = 1;
$arrayCount = count($sampleArray);
foreach($sampleArray as $key => $value){
if($count == 1){
//1回目の処理
}else if($count == $arrayCount){
//最後の処理
}else{
//最初と最後以外
}
++$count;
}
カウント用の変数($count)を作って回すたびに増やせばいいですね。
count()で配列内の数を出せるんで、最後もやれる。応用して、最初からn番目、最後からn番目とかの指定もやっていける。そこまで込み入ったことは余りやらないと思うけど。
コメント