【初心者向け】PHPのend関数とは?使い方を分かりやすく解説

PHPの「end関数」についてご存じでしょうか?

配列操作ができる関数は複数あるため、他の関数との違いが分かっていない人もいることでしょう。

そこで今回は、

end関数の機能と他の配列操作関数との違い

を分かりやすく解説します。

PHPを学習して間もない初心者や、配列操作ができるようになりたい人は、ぜひご覧ください。

end関数の基本

end関数は、PHPで配列を操作したい場合に利用する関数です。まずは、end関数の機能・引数・戻り値について解説しますので、基本をしっかり押さえましょう。

end関数の機能

end関数は、配列の内部ポインタを最終要素まで移動させた後、最終要素に格納されている値を取得します。

内部ポインタとは、配列のどの要素を参照しようとしているかを示すカーソルのようなものです。配列を定義した際に、内部ポインタは最初の要素を指しています。

end関数などの配列操作を行う関数は、値の取得と同時に内部ポインタを操作します。そのため開発者は、内部ポインタが現在どの要素を指しているのかを常に意識することが重要です。

end関数の引数

end関数の引数は1つで、配列を渡します。

整数型や文字列型など、配列以外の型を渡した場合、エラーになります。

end関数の戻り値

end関数の戻り値は、引数で渡した配列の最終要素に格納されている値です。そのため、あらゆる型の値が返される場合があります。

空の配列を引数とした場合は、falseが戻り値として返ってきます。

似た機能を持つ関数

end関数以外にも、PHPには配列操作が可能な関数が複数あります。機能を混同することがないように、各関数の機能をしっかり把握しましょう。

関数名 機能
array_key_last 配列の最後のキーを取得します
current 現在内部ポインタが指している要素の値を取得します
next 内部ポインタを次の要素に移動させてから値を取得します
prev 内部ポインタを前の要素に移動させてから値を取得します
reset 内部ポインタを最初の要素に移動させてから値を取得します

array_key_last関数

array_key_last関数は、配列の最後のキーを取得します。end関数と機能が似ているため、以下のサンプルコードを参考にして機能の違いを把握しましょう。

array_key_last関数の特徴は、キーを取得する際に内部ポインタを移動させないことです。もし、内部ポインタを動かさずに最後の値を取得したいのであれば、以下のサンプルコードのように記述できます。

current関数

current関数は、内部ポインタが現在指している要素の値を取得する関数です。関数呼び出し後に内部ポインタが移動することはありません。

next関数

next関数は、内部ポインタを次の要素に1つ移動させた後に値を取得する機能を持ちます。内部ポインタが最終要素を指しているときにnext関数を呼び出した際には、falseが返却されます。

配列の範囲を超えて意図しない動作を引き起こさないためにも、next関数を呼び出す際には配列の範囲を超えることがないように意識しましょう。

prev関数

prev関数は、内部ポインタを前の要素に1つ移動させてから値を取得する機能を持ちます。内部ポインタが最初の要素を指しているときにprev関数を呼び出すと、falseが返却されます。

next関数と同様に、利用する際には配列の範囲を超えないように意識しましょう。

reset関数

reset関数は、内部ポインタを最初の要素に移動させてから値を取得する機能を持ちます。

まとめ

いかがでしたか?今回は、PHPのend関数の機能と他の配列操作関数との違いについて解説しました。

引数や戻り値だけでなく、他の関数との挙動の違いを把握することで、配列操作に対する理解はより一層深まります。

ぜひ、この記事をPHPの学習に役立ててください。

BLOGコンテンツをパーソナライズします

あなたは現在「プログラミング学習者」ですか?